2016-05-26 3 views
0

kommt Bitte finden Sie mein Problem unten.Holen Sie die Zeilen zwischen einer Datei, wenn das gleiche Muster am Anfang der Zeile

Ich muss die Datensätze aus einer Datei holen und in verschiedene Dateien aufteilen, wenn die ersten 2 Zeichen der Zeile 10 bis die nächsten 10 erscheint.Seine wie Zeile beginnend mit 10 ist Header-Datensätze und Daten, wieder für einen anderen Datenheader beginnt.

Eingabedatei:

10000002221300000223............................etc some informations 
Data... 
data.... 
data.. 
data.... 
data.... 
10000002332200006556...........................etc some informations 
data2 
data2 
data2 
data2 
data2 

Ausgang file1:

10000002221300000223............................etc some informations 
Data... 
data.... 
data.. 
data.... 
data... 

Ausgang file2:

10000002332200006556...........................etc some informations 
data2 
data2 
data2 
data2 
data2 
+0

Welche Werkzeuge sind erlaubt? – GMichael

+0

Shell-Skripting in Bash/Ksh-Umgebung – Naveen

Antwort

0

Die folgenden sollen Ihnen helfen,

awk 'BEGIN {FILE_NAME="output_prefix"; INX=0; } /^10/{INX++; print $0 > (FILE_NAME INX); } {print $0 >> (FILE_NAME INX);}' ; 

Erzeugt Dateien

output_prefix1 
output_prefix2 
output_prefix3 
etc 
+0

Wow Michael ... Sie sind ein Live-Saver :) Vielen Dank ... Funktioniert wie erwartet ... Awesome :) :) – Naveen

Verwandte Themen