Wenn Sie Linux verwenden, werden Sie möglicherweise auf Verweise auf "Standard-E/A" oder "Standardeingabe", "Standardausgabe" und "Standardfehler" stoßen. Was bedeuten diese Begriffe?

Standardeingabe

Standardeingabe ist ein Begriff für die Eingabe, die ein befehlsbasiertes Programm empfängt. Bei der interaktiven Verwendung kommt es normalerweise von der Tastatur, aber wie Sie später sehen werden, kann es auch aus einer Datei stammen.

Während die Tastatur heutzutage meist direkt an die Maschine gesteckt wird, waren Textterminals noch mehr übliche Standardeingabe wurde von der Terminaltastatur genommen, die an einen zentralen Minicomputer angeschlossen ist oder Großrechner. Moderne Linux-Systeme verwenden Terminalemulatoren oder die Systemkonsole für die Standardeingabe.

Standardausgabe

Die Standardausgabe ist wie die Standardeingabe der Ort, an dem ein Programm seine Textausgabe sendet. Auch hier handelt es sich typischerweise um einen Terminalemulator auf modernen Systemen, aber in der Vergangenheit auch auf physischen Terminals, entweder mit CRT-Bildschirmen oder mit Fernschreibern auf Papier gedruckt.

Teletype-Terminals waren häufiger, als der Vorgänger von Linux, Unix, in den späten 1960er und frühen 1970er Jahren in den Bell Labs entwickelt wurde.

Verwandt: Warum sind Linux-Befehle so kurz? Die Geschichte der Linux-Befehle

Wie bei der Standardeingabe können Sie auch die Standardausgabe in eine Datei umleiten.

Standart Fehler

Standardfehler werden normalerweise für alle Fehlermeldungen verwendet, die ein Programm generieren kann. Wie bei der Standardausgabe wird sie normalerweise auf dem Bildschirm angezeigt, kann aber auch in eine Datei oder auf ein Blockgerät wie z. B. umgeleitet werden /dev/null.

So leiten Sie die Ein- und Ausgabe unter Linux um

Eine der mächtigsten Funktionen von Linux- und Unix-Systemen ist die Möglichkeit, Eingaben und Ausgaben in Dateien und andere Programme umzuleiten.

Die am weitesten verbreitete Methode besteht darin, die Ausgabe von einem Befehl an einen anderen oder eine "Pipeline" zu senden. Zum Um beispielsweise zu sehen, wie viele Linux-Befehle "sh" in ihrem Namen haben, können Sie die Ausgabe des ls-Befehls weiterleiten mit grep.

ls /bin | grep 'sch'

Zu die Ausgabe eines Befehls in eine Datei umleiten, benutze die > Operator. Um beispielsweise die Ausgabe von zu senden der ls-Befehl in einen Dateinamen Dateiliste:

ls > Dateiliste

Die >> Operator hängt die Ausgabe an eine vorhandene Datei an oder erstellt sie, wenn sie nicht existiert. Um zu verhindern, dass eine Datei versehentlich überschrieben wird, können Sie in der Bash die Option "noclobber" setzen:

Noclobber einstellen

Sie können ein Programm auch veranlassen, Eingaben aus einer Datei mit der < Operator. Das cat-Programm kann den Inhalt einer Datei drucken, indem es Eingaben aus der Datei entgegennimmt und die Ausgabe an die Standardausgabe sendet.

Katze < Datei

Natürlich können Sie einfach cat verwenden und den Dateipfad als Argument angeben, aber dies ist nur ein Beispiel.

Sie können Standardfehler mithilfe eines Dateideskriptors oder einer Zahl umleiten, die für eine der Formen von Standard-E/A steht. Bei Dateideskriptoren steht 0 für die Standardeingabe, 1 für die Standardausgabe und 2 für den Standardfehler. Die Syntax in Bash ist [Dateideskriptor]>. Es ist nützlich, den Standardfehler an. umzuleiten /dev/null um Fehler loszuwerden:

linux_command 2> /dev/null

Sie können sowohl die Standardausgabe als auch die Standardeingabe gleichzeitig umleiten mit &>, was nützlich ist, wenn Sie eine E-Mail oder einen Forumsbeitrag senden müssen, in dem ein Problem beschrieben wird, das Sie mit einem Programm haben:

linux_command &> Datei

Standard-E/A funktioniert überall

Selbst mit den heute verfügbaren grafischen Umgebungen bleibt Standard-I/O wichtig, da es immer noch die universelle Schnittstelle ist, vom Desktop über den Server bis zum Mobilgerät, die auf ASCII-Text basiert.

Was ist ASCII-Text und wie wird er verwendet?

ASCII-Text erscheint kryptisch, wird aber im Internet vielseitig verwendet.

Weiter lesen

TeilenTweetEmail
Verwandte Themen
  • Linux
  • Technologie erklärt
  • Linux-Grundstufe
  • Linux-Bash-Shell
Über den Autor
David Delony (62 veröffentlichte Artikel)

David ist ein freiberuflicher Autor mit Sitz im pazifischen Nordwesten, stammt jedoch ursprünglich aus der Bay Area. Er ist seit seiner Kindheit technikbegeistert. Davids Interessen sind Lesen, Ansehen hochwertiger Fernsehsendungen und Filme, Retro-Spiele und das Sammeln von Schallplatten.

Mehr von David Delony

Abonniere unseren Newsletter

Abonnieren Sie unseren Newsletter für technische Tipps, Rezensionen, kostenlose E-Books und exklusive Angebote!

Klicken Sie hier, um zu abonnieren