Textdatei aufteilen nach bestimmter Phrase in einzelne txt-Dateien

shotekitehi

shotekitehi

Aktives Mitglied
Thread Starter
Dabei seit
30.12.2007
Beiträge
125
Reaktionspunkte
2
Hallo,

ich habe eine sehr lange Textdatei (5 MB) mit ganz viel Text und und die Zeile mit "Date:" taucht da häufig auf und nach der soll die lange Textdatei bitte in viele einzelne Textdateien aufgeteilt werden.

Wie bekomme ich das automatisch hin?
Vielen Dank.

shotekitehi
 
Hallo,

ich habe eine sehr lange Textdatei (5 MB) mit ganz viel Text und und die Zeile mit "Date:" taucht da häufig auf und nach der soll die lange Textdatei bitte in viele einzelne Textdateien aufgeteilt werden.

Wie bekomme ich das automatisch hin?
Vielen Dank.

shotekitehi

Mit dem Terminal und grep/awk/sed und regex geht das bestimmt. Ist alles schon bei OS X dabei, kostet also nichts.

kannst du:
* Das Aufteilen genauer erklären?
* Nachdem "Date:" gefunden wurde, soll was passieren? Alles nach Date: bis zum nächsten "Date:" in eine eigene .txt datei geschrieben werden, oder nur genau die Zeile mit dem Date?
* Sind da Zeilenumbrüche dazwischen (zwischen 2 "Date:"s) oder anderer Text, oder folgt nach dem "Date:" direkt wieder ein Date?
* Ist vor dem "Date:" in der Zeile etwas (Leerzeichen, anderer Text)?

Am besten hängst du hier direkt ein Beispiel an (den Inhalt kannst du umändern, aber nicht die Semantik), falls du ein ausprobiertes regex willst. Das klingt nämlich nicht so schwer und ist wahrscheinlich in ein paar Sekunden gemacht, sofern man eben ein richtiges Beispiel hat.
Falls nicht, im Intenet nach "grep", "awk" "sed" "Regex", "Mac OS X Terminal" suchen und die Inhalte passend zusammenfügen. Am besten noch mit Stackoverflow kombinieren, da gibts bestimmt schon Leute die ähnliches wollten. "How to split large text file based on String stackoverflow" oder sowas. Viel Glück!

edit:
https://askubuntu.com/questions/746...files-when-pattern-appears-using-command?rq=1
https://askubuntu.com/questions/680...when-pattern-appears-with-command-line-in-lin
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: mausfang und KOJOTE
Code:
man csplit
 
  • Gefällt mir
Reaktionen: xentric
Top, das ist noch besser! Zu selten benutzt, ist mir deshalb nicht eingefallen :-/.

Der gute UTF-8 Club, letztens erst wieder auf der Arbeit gehabt und Stunden mit verschwendet, ..
 
Danke für die Antworten. Entschuldigt meine verspätete Antwort.
Bei Code bin ich Anfänger, da hab ich keine Ahnung, wie ich das Anfangen könnte.

Müsste immer bei Date: ..... getrennt werden, sodaß ich bei dem Beispiel dann 3 Dateien hätte.


Beispiel aus den Daten:

Date: 2. April 1984 um 14:07:15 MESZ
Weather: 0°C Overcast
Location: xxxxx

Text....Text....Text.....

Date: 3. April 1984 um 12:00:00 MESZ
Weather: -1°C Overcast
Location: xxxx

Text....Text....Text.....

Date: 27. Oktober 1984 um 14:09:56 MEZ
Weather: 6°C Mostly Cloudy
Location: XXXX

Text....Text....Text.....​
 
Zurück
Oben Unten