Hallo!
Ich habe 2 Dateien:
Datei 1:
abc
cde
bla
Datei 2:
12
345
34
Jetzt möchte ich beide so zusammenführen, dass das herauskommt:
abc 12
cde 345
bla 34
Wie lässt sich das am einfachsten realisieren?
Danke!
shell - 2 Dateien zusammenführen
Folgendes funktioniert bei mir sehr gut.
datei3 ist die Zieldatei. Das
brauchst du für ein Leerzeichen, wenn du sie ohne Leerzeichen willst, einfach
Code: Select all
paste -d " " datei1 datei2 > datei3
Code: Select all
" "
cu""
Du suchst Funktioniert in einer Pipe natürlich auch:
Jochen
Code: Select all
head -n 1 dateiname
Code: Select all
cmd | head -n 1
Die grösste Lüge der EDV? "Mal eben..."
Kleiner Tipp: Wenn Dein Englisch gut ist, findest Du unter http://www.tldp.org/LDP/Bash-Beginners- ... index.html und http://www.tldp.org/LDP/abs/html/index.html jede Menge Infos.
Ansonsten kann jedes Kommando zweierlei Arten von Ausgaben erzeugen: Normalen Output (auf stdout - Standardausgabe) und Fehlermeldungen (auf stderr - Standardfehlerausgabe).
Unterdrücken der normalen Ausgabe:Unterdrücken der Fehlerausgabe:
Die erste Schreibweise lenkt die jeweiligen Ausgaben ins Datengrab um und ist zwischen allen Shells portabel. Die zweite schliesst den jeweiligen Dateideskriptor, funktioniert so aber nicht in der alten Bourne-Shell (/bin/sh). Die bash und ksh können damit aber umgehen.
Jochen
Ansonsten kann jedes Kommando zweierlei Arten von Ausgaben erzeugen: Normalen Output (auf stdout - Standardausgabe) und Fehlermeldungen (auf stderr - Standardfehlerausgabe).
Unterdrücken der normalen Ausgabe:
Code: Select all
cmd >/dev/null
cmd >&-
Code: Select all
cmd 2>/dev/null
cmd 2>&-
Jochen
Die grösste Lüge der EDV? "Mal eben..."
Danke! Ich habe schonmal angefangen, so eine Anleitung zu lesen, sonst würde ich dümmere Fragen stellen aber bis ich dann irgendwann zufällig finde, was ich suche dauert es zu mir zu lange. Und das alles nur, um ein kleines Script zu schreiben. Das klingt jetzt vielleicht etwas dreist, aber für Klausuren lerenen muss ja auch noch irgendwie etwas Zeit da sein.