Aufteilen einer Datei in zwei Teile beim ersten Vorkommen einer angegebenen Zeichenfolge

Aufteilen einer Datei in zwei Teile beim ersten Vorkommen einer angegebenen Zeichenfolge

Wie kann ich eine Textdatei beim ersten Vorkommen einer angegebenen Zeichenfolge in zwei Teile aufteilen? Ich habe mir den Split-Befehl angesehen, aber das funktioniert dort nicht.

In der Vergangenheit habe ich hierfür ein Skript verwendet. Das ist jedoch nicht sehr effizient und ich muss das Skript auf verschiedene Systeme verschieben. Ich habe mich gefragt, ob es dafür einen besseren Weg gibt.

Antwort1

Ich empfehle die Verwendung von csplit(Kontextaufteilung), a la:

csplit [Optionen] Datei MUSTER

Nehmen wir zum Beispiel eine DateiDateinameenthaltend

one
two 
three
four
five
six
seven
eight

mit dem Befehlcsplit Dateiname /vier/

wir bekommen Dateixx00mit

one
two 
three

und Dateixx01mit

four
five
six
seven
eight

Weitere Einzelheiten finden Sie unterhttp://docstore.mik.ua/orelly/unix/upt/ch35_10.htmund auch beihttps://davidlyness.com/post/die-funktionalen-und-leistungsunterschiede-von-sed-awk-und-anderen-unix-parsing-utilities

verwandte Informationen