• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Die Bildungsoffensive hier im Forum geht weiter! Jetzt sollen Kreativität und technische Möglichkeiten einen neue Dimension erreichen. Das Thema in diesem Monat lautet - Verkehrte Welt - Hier geht es lang --> Klick

Dateien zeilenweise zusammenfügen

wims_live

Jonagold
Registriert
26.05.09
Beiträge
21
Guten Abend allerseits...

Hab ein kleines Problem, bei dem ich hoffe, das mir jemand helfen kann...

Habe mit verschiedenen "grep" und "sed" Anweisungen eine Datei so aufgesplittet, das die von mir benötigten Werte in 4 (!) Dateien zeilenweise gespeichert sind.

Nun möchte ich die Dateien gern zusammenführen, und zwar nach folgenden Muster:

Datei_1_Zeile_1 Datei_2_Zeile_1 Datei_3_Zeile_1 Datei_4_Zeile_1
Datei_1_Zeile_2 Datei_2_Zeile_2 Datei_3_Zeile_2 Datei_4_Zeile_2
usw...

Als Seperator kann TAB, Semikolon, oder Komma in Frage kommen.

Hab "paste" mit dem -d Argument ausprobiert.

Leider fügt es mir die Werte schon zusammenhängend zusammen, aber untereinander.

Bsp:

Datei_1_Zeile_1
Datei_2_Zeile_1
Datei_3_Zeile_1
Datei_4_Zeile_1
Datei_1_Zeile_2
Datei_2_Zeile_2
Datei_3_Zeile_2
Datei_4_Zeile_2

Der noch mögliche -s Schalter hilft hier auch nicht.

Hat hier irgendjemand einen Rat, wie ich mein kleines Problemchen lösen kann?

Vielen Dank
 
Das sollte sich mit einem kleinen Perl-Script schnell machen lassen.
Wirf doch mal einen Blick ins Pers-Tutorial.
Grundidee:
Vier Eingabedateien E1 bis E4 öffnen, eine Ausgabedatei A öffnen,
Schleife: Zeile aus Eingabe E1 auslesen, chomp (Zeilenumbruch abschneiden), nach A schreiben, dasselbe für E2 bis E4, dann Zeilenumbruch nach A schreiben.
Wenn E1 zuende gelesen, Schleife abbrechen und alle 5 Dateien schließen.
 
Ein simples:
Code:
paste File1 File2 File3 File[I]n[/I]
...should do the job.
Überrprüfe deine Dateien mal mit einem Hexdump auf irgendwelche versehentlich eingebauten, obskuren Steuerzeichen am Zeilenende, die dir vllt da querschiessen könnten.
(Alternativ gäbe es auch noch "lam", das eine ganz ähnliche Funktion besitzt...)
 
  • Like
Reaktionen: CloneOfMyself