Überblick über den cat-Befehl

Der Befehl cat – eine Abkürzung für „concatenate“ – gehört zu den grundlegenden Werkzeugen in Unix-ähnlichen Systemen. Er wurde erstmals in Unix Version 1 (1971) eingeführt und ist standardmäßig auf nahezu jeder Linux-Distribution vorhanden. Viele nutzen ihn vor allem, um den Inhalt einer Datei im Terminal auszugeben. Darüber hinaus kann cat Dateien zusammenführen, neue Dateien anlegen, Text anhängen und Ausgaben umleiten. Diese Vielseitigkeit macht ihn zu einem täglichen Helfer für Shell-Arbeiten und den Umgang mit Dateien.

In diesem Leitfaden siehst du, wie du cat praxisnah einsetzt. Du lernst typische Aufgaben wie das Anzeigen von Dateien, das Zusammenführen mehrerer Dateien, das Umleiten von Ein- und Ausgaben, das Nummerieren von Zeilen sowie die Nutzung von Pipes. Außerdem werden nützliche Optionen erklärt, die cat je nach Umgebung schneller und komfortabler machen.

Voraussetzungen

Bevor du loslegst, solltest du Folgendes haben:

  • Einen Linux-Server mit Ubuntu oder einer anderen unterstützten Distribution.
  • SSH-Zugriff auf diesen Server.
  • Einen Nicht-Root-Benutzer mit sudo-Rechten.
  • Einen Texteditor wie nano zum Erstellen und Bearbeiten von Dateien.

Optionen des cat-Befehls

Das Werkzeug cat ist schlicht, aber sehr leistungsfähig. Es erlaubt dir, Inhalte von Dateien anzusehen, zusammenzuführen und weiterzuverarbeiten. Der Name leitet sich von „concatenate“ ab und verweist auf die ursprüngliche Hauptfunktion: mehrere Dateien in einer einzigen Ausgabe zu kombinieren. Auch wenn die häufigste Nutzung das Anzeigen einer Datei im Terminal ist, eröffnen Optionen weitere Einsatzfelder wie das Formatieren der Ausgabe, das Finden von Problemen im Inhalt oder das Steuern von Datenströmen.

Dieser Abschnitt zeigt die Grundsyntax, häufig verwendete Schalter und praktische Beispiele.

Befehlssyntax

„Concatenate“ beschreibt, wie cat den Inhalt von Dateien zu einem durchgehenden Datenstrom verbindet. Obwohl das Zusammenfügen weiterhin die Kernaufgabe ist, wird cat oft verwendet, um Dateien schnell zu prüfen, Texte zu überfliegen oder Daten zwischen Befehlen weiterzureichen.

Das allgemeine Format lautet:

cat [options] [file(s)]
[options]: Flags that change how cat behaves, such as formatting output.
[file(s)]: One or more files to process. If you leave this out, cat reads from standard input.

Wenn du cat ohne Dateiangabe startest, wechselt es in den interaktiven Modus. Du kannst dann Text direkt eingeben und mit Ctrl + D beenden. Das ist praktisch für schnelle Notizen oder um manuell Daten in eine Pipe zu schicken.

Übersicht gängiger Optionen

Die folgende Liste enthält die am häufigsten genutzten cat-Optionen.

Option Beschreibung Beispiel
-b Nummeriert nur Zeilen, die nicht leer sind. cat -b example.txt
-s Fasst mehrere aufeinanderfolgende Leerzeilen zu einer einzigen Leerzeile zusammen. cat -s example.txt
-E Zeigt am Ende jeder Zeile ein $ an. cat -E example.txt
-T Stellt Tabulatoren als ^I dar. cat -T tabbed.txt
-A Entspricht der kombinierten Nutzung von -vET. cat -A example.txt
-v Macht nicht druckbare Zeichen sichtbar. cat -v ctrlc.txt

Ausgewählte Optionen in der Praxis

cat bietet mehrere Schalter, die den Funktionsumfang erweitern. Die folgenden Beispiele zeigen, wie sie wirken.

Testdatei vorbereiten

Erstelle und öffne eine Datei namens example.txt:

Füge diesen Text in die Datei ein:

Hello, everyone!

Greetings from centron!

Speichere und schließe mit Ctrl + X, bestätige mit Y und drücke Enter.

Diese cat-Optionen ausprobieren

-b: Zählt nur nicht leere Zeilen. Das ist hilfreich bei Logs oder Code, wenn Leerzeilen nicht relevant sind.

Ausgabe:

1 Hello, everyone!

2 Greetings from centron!!

-s: Reduziert mehrere Leerzeilen hintereinander auf eine einzelne – ideal, um unordentliche Dateien aufzuräumen.

-E: Hängt an jedes Zeilenende ein $ an, damit du Zeilenumbrüche oder nachgestellte Leerzeichen erkennen kannst.

Ausgabe:

Hello!$

$

Greetings from centron!$

-T: Zeigt Tabulatoren als ^I, was beim Finden von Einrückungsfehlern hilft. Eine Datei mit Tabs kannst du so erstellen:

$ echo -e "Hello,\tWorld!" > tabbed.txt
$ cat -T tabbed.txt

Ausgabe:

Hello,^IWorld!

-A: Kombiniert -E, -T und -v, sodass du Zeilenenden, Tabs und versteckte Zeichen gleichzeitig siehst.

Ausgabe:

Hello,^Ieveryone!$

$

Greetings from centron!$

-v: Macht Steuerzeichen sichtbar. Zum Beispiel:

$ echo $'\x03' > ctrlc.txt
$ cat -v ctrlc.txt

Ausgabe:

^C

Dateien mit dem cat-Befehl anzeigen

Der klassische Einsatz von cat ist das direkte Ausgeben von Dateiinhalten im Terminal. Das geht schnell und ohne großen Overhead – ideal, um Logs, Skripte oder Konfigurationsdateien zu lesen, ohne einen Editor zu öffnen. Die nächsten Beispiele zeigen, wie du eine Datei, mehrere Dateien und auch große Dateien besser handhabst.

Erstelle eine Datei tutorial.txt mit einer Zeile Inhalt:

$ echo "Learn cat commands with centron!" > tutorial.txt

Zeige den Inhalt von tutorial.txt an:

Ausgabe:

Learn cat commands with centron!

Um mehrere Dateien auszugeben, gib sie nacheinander hinter cat an. Zum Beispiel, um zuerst example.txt und danach tutorial.txt zu zeigen:

$ cat example.txt tutorial.txt

Ausgabe:

Hello, everyone!

Greetings from centron!

Learn cat commands with centron!

cat gibt Dateien genau in der Reihenfolge aus, wie du sie angibst. Wenn du die Reihenfolge umdrehen willst, nutze tac – das ist cat rückwärts geschrieben und gibt Zeilen von unten nach oben aus.

Mit einem Wildcard-Zeichen (*) kannst du alle .txt-Dateien im aktuellen Ordner ausgeben:

Liegt der Text in einem anderen Verzeichnis, setze den Pfad vor das Wildcard:

$ cat /path/to/directory/*.txt

Ersetze /path/to/directory/ durch den tatsächlichen Speicherort.

Bei sehr großen Dateien kannst du verhindern, dass das Terminal überflutet wird, indem du cat mit Pipes an andere Befehle weiterleitest.

Leite in head um, um nur den Anfang einer Datei zu lesen. Zum Beispiel die ersten 20 Zeilen von largefile.txt:

$ cat largefile.txt | head -n 20

Mit tail liest du stattdessen das Ende:

$ cat largefile.txt | tail -n 20

Tausche largefile.txt gegen jede große Datei aus, die du prüfen möchtest.

Du kannst die Ausgabe auch an less übergeben, um sie scrollbar zu lesen:

Überblick über den cat-Befehl

Der Befehl cat – kurz für „concatenate“ – ist eines der wichtigsten Basis-Tools in Unix-artigen Systemen. Er stammt aus Unix Version 1 (1971) und ist auf fast jeder Linux-Distribution standardmäßig installiert. Auch wenn viele ihn vor allem zum Anzeigen von Dateiinhalten im Terminal verwenden, kann cat ebenso Dateien zusammenführen, neue Dateien erzeugen, Text ergänzen und Ausgaben umleiten. Dadurch ist er ein alltäglicher Begleiter für Shell-Arbeit und Dateiverwaltung.

Dieser Leitfaden zeigt den Einsatz von cat in realen Szenarien. Du übst typische Aufgaben wie Dateien anzeigen, mehrere Dateien zusammenführen, Ein- und Ausgabe umleiten, Zeilen nummerieren und Pipes nutzen. Außerdem werden hilfreiche Optionen vorgestellt, die cat in unterschiedlichen Setups noch nützlicher machen.

Voraussetzungen

Bevor du startest, stelle sicher, dass du Folgendes hast:

  • Einen Linux-Server mit Ubuntu oder einer anderen unterstützten Distribution.
  • SSH-Zugriff auf diesen Server.
  • Einen Nicht-Root-Benutzer mit sudo-Rechten.
  • Einen Texteditor wie nano zum Erstellen und Bearbeiten von Dateien.

Optionen des cat-Befehls

Das Programm cat wirkt einfach, bietet aber viel Power. Es erlaubt das Anzeigen, Verbinden und Verarbeiten von Dateiinhalten. Sein Name leitet sich von „concatenate“ ab und beschreibt die ursprüngliche Aufgabe, Dateien in einer Ausgabe zu vereinen. Neben der klassischen Anzeige im Terminal ermöglichen Optionen zusätzliche Anwendungsfälle wie Ausgabeformatierung, Fehlersuche im Inhalt oder das Anpassen von Streams.

Hier findest du die Grundsyntax, häufige Schalter und praktische Beispiele.

Befehlssyntax

„Concatenate“ erklärt, wie cat Inhalte mehrerer Dateien zu einem einzigen Strom zusammenführt. Auch wenn das Zusammenfügen die Hauptfunktion bleibt, wird cat oft genutzt, um Dateien schnell zu prüfen, Text zu lesen oder Daten an andere Befehle weiterzugeben.

Das allgemeine Format ist:

cat [options] [file(s)]
[options]: Flags that change how cat behaves, such as formatting output.
[file(s)]: One or more files to process. If you leave this out, cat reads from standard input.

Wenn du cat ohne Dateinamen aufrufst, arbeitet es interaktiv. Du gibst Text ein und beendest mit Ctrl + D. Das ist nützlich für kurze Eingaben oder wenn du manuell in eine Pipe schreiben willst.

Übersicht gängiger Optionen

Die folgende Liste fasst die populärsten cat-Optionen zusammen.

Option Beschreibung Beispiel
-b Nummeriert nur nicht leere Zeilen. cat -b example.txt
-s Fasst wiederholte Leerzeilen zu einer einzigen Leerzeile zusammen. cat -s example.txt
-E Zeigt ein $ am Ende jeder Zeile. cat -E example.txt
-T Stellt Tab-Zeichen als ^I dar. cat -T tabbed.txt
-A Das Gleiche wie -vET gemeinsam. cat -A example.txt
-v Zeigt nicht druckbare Zeichen an. cat -v ctrlc.txt

Ausgewählte Optionen demonstrieren

cat besitzt mehrere Flags, die zusätzliche Funktionen freischalten. Die Beispiele darunter zeigen die jeweilige Wirkung.

Testdatei vorbereiten

Erstelle und öffne die Datei example.txt:

Schreibe diesen Text hinein:

Hello, everyone!

Greetings from centron!

Speichere und schließe mit Ctrl + X, bestätige mit Y und drücke Enter.

Diese cat-Optionen testen

-b: Zählt ausschließlich nicht leere Zeilen. Praktisch für Logs oder Code, wenn Abstände unwichtig sind.

Ausgabe:

1 Hello, everyone!

2 Greetings from centron!!

-s: Komprimiert mehrere Leerzeilen hintereinander zu einer einzigen – so werden chaotische Dateien lesbarer.

-E: Hängt am Zeilenende ein $ an, damit du versteckte Leerzeichen oder Zeilenumbrüche erkennst.

Ausgabe:

Hello!$

$

Greetings from centron!$

-T: Zeigt Tabs als ^I, was Einrückungsprobleme sichtbar macht. Eine tabbed Datei erzeugst du so:

$ echo -e "Hello,\tWorld!" > tabbed.txt
$ cat -T tabbed.txt

Ausgabe:

Hello,^IWorld!

-A: Vereint -E, -T und -v, sodass du alle unsichtbaren Details auf einen Blick siehst.

Ausgabe:

Hello,^Ieveryone!$

$

Greetings from centron!$

-v: Macht Steuerzeichen sichtbar. Zum Beispiel:

$ echo $'\x03' > ctrlc.txt
$ cat -v ctrlc.txt

Ausgabe:

^C

Dateien mit dem cat-Befehl anzeigen

Die typische Anwendung von cat ist das einfache Ausgeben von Dateiinhalten im Terminal. Dafür ist es schnell und ressourcenschonend – perfekt, um Logs, Skripte oder Konfigurationen zu lesen, ohne einen Editor zu öffnen. Die nächsten Beispiele zeigen eine einzelne Datei, mehrere Dateien und den Umgang mit großen Dateien.

Erstelle eine Datei namens tutorial.txt mit einer Zeile Inhalt:

$ echo "Learn cat commands with centron!" > tutorial.txt

Gib den Inhalt von tutorial.txt aus:

Ausgabe:

Learn cat commands with centron!

Für mehrere Dateien nennst du sie einfach hintereinander. Zum Beispiel, um example.txt und danach tutorial.txt zu zeigen:

$ cat example.txt tutorial.txt

Ausgabe:

Hello, everyone!

Greetings from centron!

Learn cat commands with centron!

cat verarbeitet Dateien in der Reihenfolge der Argumente. Wenn du die Ausgabe umdrehen willst, verwende tac – damit werden Zeilen von unten nach oben ausgegeben.

Mit Wildcards (*) kannst du alle .txt-Dateien im aktuellen Verzeichnis ausgeben:

Wenn die Dateien in einem anderen Ordner liegen, ergänze den Pfad vor dem Wildcard:

$ cat /path/to/directory/*.txt

Ersetze /path/to/directory/ durch den korrekten Pfad.

Bei riesigen Dateien kannst du die Terminalausgabe begrenzen, indem du cat über Pipes kombinierst.

Mit head liest du den Anfang, zum Beispiel die ersten 20 Zeilen von largefile.txt:

$ cat largefile.txt | head -n 20

Mit tail schaust du ans Ende:

$ cat largefile.txt | tail -n 20

Tausche largefile.txt gegen eine beliebige große Datei aus.

Alternativ kannst du die Ausgabe an less übergeben, um bequem zu scrollen:

Nur nicht leere Zeilen mit -b nummerieren

Mit dem Flag -b kannst du Zeilennummern ausgeben lassen, wobei ausschließlich Zeilen mit Inhalt gezählt werden. Leere Zeilen werden übersprungen. Das ist nützlich, wenn du dich auf echten Inhalt konzentrieren willst – etwa in Konfigurationsdateien oder schlanken Logs mit vielen Leerzeilen.

Gib /etc/ssh/ssh_config aus, ohne leere Zeilen zu nummerieren:

$ cat -b /etc/ssh/ssh_config

Ausgabe:

1 # This is the ssh client system-wide configuration file. See

2 # ssh_config(5) for more information. This file provides defaults for

3 # users, and the values can be changed in per-user configuration files

4 # or on the command line.

Zeilennummerierung mit Pipes kombinieren

Du kannst cat -n oder cat -b mit weiteren Werkzeugen verketten, um gezielt zu filtern oder zu formatieren.

Durchsuche nummerierte Syslog-Zeilen nach Fehlermeldungen:

$ sudo cat -n /var/log/syslog | grep "error"

Beispielausgabe:

1452 Mar 1 14:22:01 ubuntu-server cron[1234]: ERROR: Failed to start job

1789 Mar 1 14:35:01 ubuntu-server kernel: [UFW BLOCK] IN=eth0 SRC=203.0.113.5

Bestimmte Zeilen aus example.txt mit awk herausziehen:

$ cat -n example.txt | awk 'NR==1 || NR==3 {print "Line " $1 ": " $0}'

Ausgabe:

Line 1: 1 Hello, everyone!

Line 2: 2

Line 3: 3 Greetings from centron!

Fazit

In diesem Artikel hast du gesehen, wie du mit dem cat-Befehl Dateiinhalte unter Linux lesen, zusammenführen und bearbeiten kannst. Du hast das Anzeigen von Dateien geübt, Ein- und Ausgabe umgeleitet, neue Zeilen angehängt, Variablen eingefügt und Zeilen nummeriert – sowohl interaktiv als auch in Skripten für Automatisierungs-Workflows.

Egal ob du Logs überprüfst, Skripte baust oder Konfigurationen analysierst: cat bleibt ein zuverlässiges und unverzichtbares Werkzeug im Linux-Werkzeugkasten. Für weiterführende oder speziellere Nutzung wirf einen Blick in die Linux-cat-Manpage.

Quelle: vultr.com

Jetzt 200€ Guthaben sichern

Registrieren Sie sich jetzt in unserer ccloud³ und erhalten Sie 200€ Startguthaben für Ihr Projekt.

Das könnte Sie auch interessieren:

Moderne Hosting Services mit Cloud Server, Managed Server und skalierbarem Cloud Hosting für professionelle IT-Infrastrukturen

TensorRT und ONNX: High-Performance-ML auf NVIDIA-GPUs

AI/ML, Tutorial
Vijonavor 27 mins Machine-Learning-Frameworks, Modell-Tools und Deployment-Strategien in der ML-Pipeline Machine-Learning-Frameworks, spezialisierte Modell-Tools und Deployment-Lösungen übernehmen jeweils unterschiedliche Aufgaben innerhalb eines Machine-Learning-(ML)-Workflows. In jeder Phase – von der Modellerstellung über…