Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

cat - Dateien aneinanderfügen und ausgeben

&pagelevel(4)&pagelevel

(concatenate and print files)


Das Kommando cat liest Dateien sequentiell und gibt diese auf der Standard-Ausgabe aus. Die Reihenfolge der Zeichen innerhalb der Dateien und deren Format bleiben dabei unverändert.
Werden beim Aufruf von cat mehrere Dateien angegeben, so werden diese in der gleichen Reihenfolge nacheinander ausgegeben.
Wenn Sie beim Aufruf keine Datei angeben, so liest cat von der Standard-Eingabe.


Syntax


cat[ -s][ -u][ datei...]

Keine Option angegeben:

Die Ausgabe erfolgt gepuffert in Blöcken von BUFSIZ byte. Der Wert von BUFSIZ ist abhängig von der Maschine, auf der Sie arbeiten. Er wird in der Datei /usr/include/stdio.h definiert und beträgt 8192 byte. Wenn beim Aufruf angegebene Dateien nicht existieren, gibt cat eine entsprechende Meldung aus.

-s

Meldungen über nicht vorhandene Dateien werden unterdrückt.

-u

Byteweise Ausgabe ohne Zwischenspeicherung (ungepuffert).

datei

Name der Datei, die ausgegeben werden soll. Sie können mehrere Dateien angeben. Wenn Sie für datei einen Bindestrich - angeben, liest cat von der Standard-Eingabe.

datei nicht angegeben:
cat liest von der Standard-Eingabe.

Achtung!
Wenn Sie die Ausgabe von cat auf eine Datei umlenken, von der gelesen wird, dann hat das den Verlust des originalen Dateiinhalts zur Folge. Der Inhalt von datei1 geht im folgenden Beispiel verloren:

cat datei1 datei2 datei3 > datei1

Fehler

cat >aus_datei aus_datei: cannot create

Sie haben kein Schreibrecht für die Ausgabedatei aus_datei oder für das Dateiverzeichnis, in dem aus_datei enthalten ist.


cat ein_datei cat: cannot open ein_datei: Permission denied

Sie haben kein Leserecht für die Eingabedatei ein_datei.

Internationale Umgebung

Die folgenden Umgebungsvariablen beeinflussen die Ausführung des Kommandos cat:

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).

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.

Beispiel 1

Aneinanderhängen und Umleiten der Ausgabe von zwei Dateien:

$ echo Montag Dienstag Mittwoch >datei1
$ echo Donnerstag Freitag Samstag >datei2
$ cat datei1 datei2 > datei3
$ cat datei3
Montag Dienstag Mittwoch
Donnerstag Freitag Samstag

Beispiel 2

Ausgabe des Inhalts von datei1

$ cat datei1
Jeder weiß, was so ein
Maikäfer für ein Vogel sei.

In datei2 schreiben Sie nun zwei Zeilen Text:

$ cat > datei2
In den Bäumen hin und her
kriecht und fliegt und krabbelt er.

Abhängig vom verwendeten Terminaltyp beeenden Sie die Eingabe mit CTRL+C oder mit @@d.

Nun bringen Sie den Inhalt von datei1 und datei2, ergänzt um zwei weitere Zeilen, die Sie von der Standard-Eingabe eingeben, in datei3. Anschließend lassen Sie den Inhalt von datei3 ausgeben:

$ cat datei1 datei2 - > datei3
Max und Moritz immer munter
schütteln sie vom Baum herunter.

Abhängig vom verwendeten Terminaltyp beeenden Sie die Eingabe mit CTRL+C oder mit @@d.

$ cat datei3
Jeder weiß, was so ein
Maikäfer für ein Vogel sei.
In den Bäumen hin und her
kriecht und fliegt und krabbelt er.
Max und Moritz immer munter
schütteln sie vom Baum herunter.

Siehe auch

cp, pr