(merge corresponding or subsequent lines of files)
paste fügt jeweils die n-ten Zeilen von mehreren Dateien (Format 1) oder alle Zeilen innerhalb einer Datei (Format 2) zusammen. Das Ergebnis gibt paste auf die Standard-Ausgabe aus.
Syntax
Format 1: | paste[ -d liste] datei ... |
Format 2: | paste -s[ -d liste] datei ... |
Die n-ten Zeilen von mehreren Dateien zusammenfügen
paste fügt jeweils die n-ten Zeilen der Eingabedateien zusammen. Jede Datei wird dabei als Spalte einer Tabelle interpretiert; paste setzt die Spalten nebeneinander und gibt sie auf die Standard-Ausgabe aus (siehe Beispiel 1). Keine Option angegeben Trennzeichen zwischen den ausgegebenen Spalten ist das Tabulatorzeichen.
(d - delimiter) Trennzeichen zwischen den ausgegebenen Spalten ist ein Zeichen aus liste. paste verwendet die Zeichen in liste der Reihe nach. Ist paste beim letzten Zeichen angelangt, so geht es wieder an den Anfang der Liste. Die Zeilen der letzten Eingabedatei werden nicht mit einem Zeichen aus liste, sondern mit einem Neue-Zeile-Zeichen abgeschlossen. Für liste geben Sie eine Folge von beliebigen Zeichen an. Sie können auch folgende Escape-Sequenzen angeben: \n (Neue-Zeile-Zeichen), \t (Tabulatorzeichen), \\ (Gegenschrägstrich) und \0 (leere Zeichenfolge, nicht das Nullzeichen). Enthält liste Escape-Sequenzen, Leerzeichen oder Sonderzeichen der Shell, dann müssen Sie liste in Anführungszeichen "..." einschließen.
Name der Eingabedatei. paste in diesem Format ist nur dann sinnvoll, wenn Sie mehrere Dateien angeben. Wenn Sie für datei einen Bindestrich - angeben, liest paste von der Standard-Eingabe. |
Aufeinanderfolgende Zeilen zusammenfügen
(s - subsequent lines) paste fügt für jede Eingabedatei die Zeilen zu einer einzigen Zeile zusammen und schreibt diese Zeile auf die Standard-Ausgabe. Innerhalb jeder Ausgabezeile werden die Zeilen der Eingabedatei standardmäßig mit einem Tabulatorzeichen getrennt (siehe Option -d). Jede Ausgabezeile wird mit einem Neue-Zeile-Zeichen abgeschlossen.
(d - delimiter) paste verwendet die Zeichen in liste der Reihe nach. Ist paste beim letzten Zeichen angelangt, so geht es wieder an den Anfang der Liste. Für liste geben Sie eine Folge von beliebigen Zeichen an. Sie können auch folgende Escape-Sequenzen angeben: \n (Neue Zeile), \t (Tabulatorzeichen), \\ (Gegenschrägstrich) und \0 (leere Zeichenfolge, nicht das Nullzeichen). Enthält liste Escape-Sequenzen, Leerzeichen oder Sonderzeichen der Shell, dann müssen Sie liste in Anführungszeichen einschließen: "liste".
Name der Eingabedatei. Sie können mehrere Dateien angeben. |
Fehler
Ausgabezeilen dürfen nicht länger als 511 Zeichen werden.
Es dürfen im Format 1 nicht mehr als 12 Eingabedateien angegeben werden.
|
Internationale Umgebung
Die folgenden Umgebungsvariablen beeinflussen die Ausführung des Kommandos paste: LANG Gibt einen Standardwert für die Variablen für die internationale Umgebung an, die nicht gesetzt oder Null sind. Ist LANG nicht gesetzt oder Null, wird der entsprechende Standardwert der internationalen Umgebung verwendet. Enthält eine der Internationalisierungsvariablen eine ungültige Einstellung, verhält sich das Kommando so, als sei keine der Variablen definiert worden. LC_ALL Ist diese Variable auf einen Wert gesetzt, d. h. ist sie nicht leer, überschreibt dieser Wert die Werte aller übrigen Internationalisierungsvariablen. LC_CTYPE Legt die internationale Umgebung für die Interpretation der Byte-Folgen eines Datentexts als Zeichen fest (z.B. Singlebytezeichen im Unterschied zu Mehrbytezeichen in Argumenten und Eingabedateien) sowie die Einteilung der Zeichen in Groß- und Kleinbuchstaben und deren Übereinstimmung. LC_MESSAGES Legt die internationale Umgebung für Format und Inhalt der Diagnosemeldungen fest, die in die Standardfehlerausgabe geschrieben werden. NLSPATH Legt den Pfad der Meldungsdateien für LC_MESSAGES fest. |
Beispiele zu Format 1
Beispiel 1
Gegenüberstellen von sich entsprechenden Zeilen aus den Dateien zahlen und buchstaben: Die Datei zahlen enthält die Zahlen von 1 bis 100: 1 2 3 . . 100 Die Datei buchstaben enthält die Kleinbuchstaben von a bis z: a b c . . z
|
Beispiel 2
Das aktuelle Dateiverzeichnis enthält die folgenden Dateien:
Das folgende Kommando nummeriert diese Dateien (siehe Datei zahlen in Beispiel 1):
Siehe auch Beispiel 3 |
Beispiel 3
Das aktuelle Dateiverzeichnis enthält dieselben Dateien wie in Beispiel 2. Das folgende Kommando gibt den Inhalt des aktuellen Dateiverzeichnisses dreispaltig aus. Bündige Spalten erhalten Sie allerdings nur, wenn die Dateinamen nicht über den nächsten Tabulatorstop hinausreichen.
Wie kommt die Ausgabe zustande? Vergleichen Sie das soeben eingegebene Kommando mit dem Kommando
Hier liest paste zuerst die ersten Zeilen aus allen drei Dateien und fügt sie zu einer Zeile zusammen. Anschließend liest paste die zweiten Zeilen usw. Beim Kommando |
Beispiel 4
Das aktuelle Dateiverzeichnis enthält dieselben Dateien wie in Beispiel 2. Sie wollen, wie in Beispiel 3, die Dateinamen dreispaltig ausgeben; zwischen zweiter und dritter Spalte soll jedoch statt eines Tabulatorzeichens ein Doppelpunkt stehen.
|
Beispiel zu Format 2
Beispiel 5
Die Datei kunden hat folgenden Inhalt:
Das folgende Kommando fügt nur jeweils drei Zeilen der Datei kunden zusammen, da als Trennzeichen nach jeder 3. Eingabezeile ein Neue-Zeile-Zeichen angegeben ist:
|
Siehe auch
cut, grep, pr |