Direkt zum Hauptinhalt springen
eLearner.app
Modul 3 · Lektion 1 von 26/11 im Kurs~15 min
Lektionen des Moduls (1/2)

Ausgabe und Umleitungen (echo, cat, >)

Unter Linux lesen fast alle Befehle Daten über einen Eingabekanal ein und schreiben die Ergebnisse in einen Ausgabekanal. Diese Kanäle werden Standard-Datenströme (Streams) genannt:

  • Standard Input (stdin): Der Kanal, über den der Befehl Eingaben einliest (standardmäßig die Tastatur).
  • Standard Output (stdout): Der Kanal, über den der Befehl die erfolgreiche Ausgabe ausgibt (standardmäßig der Terminalbildschirm).
  • Standard Error (stderr): Der Kanal, über den der Befehl Fehlermeldungen ausgibt (standardmäßig der Bildschirm).

Dank der Befehlszeile können wir diese Datenströme umleiten, um die Ergebnisse in Dateien zu speichern.


Text ausgeben: echo

Der Befehl echo schreibt einfach die Parameter, die du ihm übergibst, in seine Standardausgabe (den Bildschirm):

Bash
echo "Ciao a tutti"

Ausgabe umleiten (Überschreiben): >

Wenn du die Ausgabe eines Befehls in einer Datei speichern möchtest, anstatt sie auf dem Bildschirm zu sehen, kannst du den Umleitungsoperator Größer-als > verwenden:

Bash
echo "Ciao a tutti" > saluti.txt

Dieser Befehl führt echo aus und leitet dessen Ausgabe in die Datei saluti.txt um.

[!IMPORTANT] Wenn die Datei saluti.txt nicht existiert, wird sie erstellt. Wenn sie bereits existiert, wird ihr Inhalt vollständig gelöscht und mit der neuen Ausgabe überschrieben.


Inhalt lesen: cat

Um den Inhalt einer oder mehrerer Textdateien schnell anzuzeigen, wird der Befehl cat (Abkürzung für concatenate) verwendet:

Bash
cat saluti.txt

Ausgabe anhängen: >>

Wenn du eine Datei nicht überschreiben, sondern neue Zeilen an das Ende des vorhandenen Inhalts anhängen möchtest, musst du den Anhängeoperator >> verwenden:

Bash
echo "Nuova riga di testo" >> saluti.txt

Wenn du die Datei nun mit cat saluti.txt liest, siehst du sowohl die erste als auch die zweite Zeile.


Anwendungsbeispiele und häufige Fehler

Du kannst cat mehrere Dateien gleichzeitig übergeben, um sie nacheinander (aneinandergereiht) anzuzeigen:

Bash
cat notes.txt info.txt
# Output:
# Keep learning Linux!
# Linux is awesome.

Du kannst die kombinierte Ausgabe mit dem Operator > in eine dritte Datei umleiten:

Bash
cat notes.txt info.txt > combined.txt

Wenn du versuchst, eine Datei zu lesen, die nicht existiert, schreibt cat eine Fehlermeldung:

Bash
cat file_inesistente.txt
# Output:
# cat: file_inesistente.txt: No such file or directory

Probier es aus

Ejercicio 1: Crea un file con un saluto

Übung#linux.m3.l1.e1
Versuche: 0Wird geladen…

Erstelle eine Datei namens 'hello.txt', die genau den Text 'Hello World' enthält, indem du den Befehl echo und den Operator > verwendest.

Editor wird geladen…
Hinweis anzeigen

Verwende echo gefolgt von der in Anführungszeichen gesetzten Zeichenfolge, dem Operator > und hello.txt.

Lösung nach 3 Versuchen verfügbar

Ejercicio 2: Aggiungi note ad un file

Übung#linux.m3.l1.e2
Versuche: 0Wird geladen…

Füge die Zeile 'Linux is fun' am Ende der vorhandenen Datei 'notes.txt' hinzu, ohne deren aktuellen Inhalt zu löschen.

Editor wird geladen…
Hinweis anzeigen

Verwende den Operator >>, um Text an die Datei notes.txt anzuhängen.

Lösung nach 3 Versuchen verfügbar

Ejercicio 3: Concatena file

Übung#linux.m3.l1.e3
Versuche: 0Wird geladen…

Verkette die Inhalte der Dateien 'notes.txt' und 'info.txt' und speichere das kombinierte Ergebnis in einer neuen Datei namens 'combined.txt'.

Editor wird geladen…
Hinweis anzeigen

Verwende cat gefolgt von den Namen der beiden Quelldateien und leite die Ausgabe mit > in die Zieldatei um.

Lösung nach 3 Versuchen verfügbar