fork download
  1. awk -F ';' 'BEGIN { OFS=";" }
  2. /^>QDN/ { number = $2 }
  3. /^TYPE/ { type = $2 " " $3 " " $4 }
  4. /^SNPA/ { snpa = $2 }
  5. /^OPTIONS/ { options = 1; next }
  6. options { print number, type, snpa, $0;
  7. number = type = snpa = options = "" }' <<\____
  8. >QDN;6135785008
  9. -------------------------------------------------------------------------------
  10. DN:;;;;;5785008;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  11. TYPE:;SINGLE;PARTY;LINE
  12. SNPA:;613;;;SIG:;DT;;;;LNATTIDX:;N/A;;;;;;;;;;;;;
  13. LINE;EQUIPMENT;NUMBER:;;;;;BSAC;;39;0;00;01;;;
  14. LINE;CLASS;CODE:;;IBN;;;
  15. IBN;TYPE:;STATION
  16. CUSTGRP:;;;;;;;;BSA_POS;;;;;SUBGRP:;0;;NCOS:;1
  17. CARDCODE:;;V5LOOP;;;;GND:;N;;PADGRP:;NPDGP;;BNV:;NL;MNO:;N
  18. PM;NODE;NUMBER;;;;;:;;;;80
  19. PM;TERMINAL;NUMBER;:;;;;2
  20. OPTIONS:
  21. CWT;DGT;DDN;NOAMA;
  22. ;
  23. -------------------------------------------------------------------------------
  24. >QDN;6160160260
  25. -------------------------------------------------------------------------------
  26. DN:;;;;;0160260;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  27. TYPE:;SINGLE;PARTY;LINE
  28. SNPA:;616;;;SIG:;DT;;;;LNATTIDX:;N/A;;;;;;;;;;;;;
  29. LINE;EQUIPMENT;NUMBER:;;;;;BSAC;;39;0;00;03;;;
  30. LINE;CLASS;CODE:;;IBN;;;
  31. IBN;TYPE:;STATION
  32. CUSTGRP:;;;;;;;;BSA_POS;;;;;SUBGRP:;0;;NCOS:;15
  33. CARDCODE:;;V5LOOP;;;;GND:;N;;PADGRP:;NPDGP;;BNV:;NL;MNO:;N
  34. PM;NODE;NUMBER;;;;;:;;;;80
  35. PM;TERMINAL;NUMBER;:;;;;4
  36. OPTIONS:
  37. CWT;3WC;DGT;DDN;NOAMA;
  38. ;
  39. ----
  40. ____
  41.  
Success #stdin #stdout 0s 4304KB
stdin
Standard input is empty
stdout
6135785008;SINGLE PARTY LINE;613;CWT;DGT;DDN;NOAMA;
6160160260;SINGLE PARTY LINE;616;CWT;3WC;DGT;DDN;NOAMA;