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):
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:
echo "Ciao a tutti" > saluti.txtDieser Befehl führt echo aus und leitet dessen Ausgabe in die Datei saluti.txt um.
[!IMPORTANT] Wenn die Datei
saluti.txtnicht 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:
cat saluti.txtAusgabe 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:
echo "Nuova riga di testo" >> saluti.txtWenn 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:
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:
cat notes.txt info.txt > combined.txtWenn du versuchst, eine Datei zu lesen, die nicht existiert, schreibt cat eine Fehlermeldung:
cat file_inesistente.txt
# Output:
# cat: file_inesistente.txt: No such file or directoryProbier es aus
Ejercicio 1: Crea un file con un saluto
Erstelle eine Datei namens 'hello.txt', die genau den Text 'Hello World' enthält, indem du den Befehl echo und den Operator > verwendest.
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
Füge die Zeile 'Linux is fun' am Ende der vorhandenen Datei 'notes.txt' hinzu, ohne deren aktuellen Inhalt zu löschen.
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
Verkette die Inhalte der Dateien 'notes.txt' und 'info.txt' und speichere das kombinierte Ergebnis in einer neuen Datei namens 'combined.txt'.
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