BASH-Programmierung

So leiten Sie stderr in Bash an stdout um

So leiten Sie stderr in Bash an stdout um
Befehle in Linux nehmen einige Eingaben vom Benutzer entgegen, die eine Datei oder ein beliebiges Attribut sein können, und geben bei der Ausführung eine Ausgabe aus, die als Standardausgabe bezeichnet wird. Die Standardausgabe kann eine Erfolgsausgabe oder eine Fehlerausgabe sein; beide werden auf Ihrem Terminalbildschirm angezeigt. In einigen Fällen möchten Sie jedoch Standardausgaben in einer Datei zum Testen oder Debuggen des Codes speichernb. Unter Linux können diese Ausgaben in eine Datei umgeleitet werden, und der Vorgang der Erfassung wird als Umleitung bezeichnet.

Jeder Prozess unter Linux produziert drei Datenströme, „stdin“, „stdout“ und „stderr“:

Jeder Datenstrom hat eine numerische ID:

Numerische ID Name
0 stdin
1 stdout
2 stderr

Lassen Sie uns die Umleitung etwas genauer erklären:

So leiten Sie die Standardausgabe und den Standardfehler in Bash um:

Um die Standardausgabe des Befehls umzuleiten, verwenden wir „1“ mit einem Umleitungsoperator, der größer als das „>“-Zeichen ist:

$ls 1> Standard.TXT

Der obige Befehl erstellt eine Datei und platziert die Standardausgabe des „ls“-Befehls in „stdout“.txt“-Datei.

Um die „stdout“ zu lesen.txt“-Datei verwenden:

$cat stdout.TXT

Wir können Standardfehler auch in eine Datei umleiten, indem wir den Befehl verwenden:

$cat myfile.txt 2> stderr.TXT

So zeigen Sie die „stderr“ an.txt“-Datei verwenden:

$cat stderr.TXT

Stellen Sie sicher, dass „2“ größer als das „>“-Zeichen ist. Da es kein "myfile" gibt.txt“-Datei im Verzeichnis, gibt der Befehl „cat“ einen Fehler aus, der in „stderr“ angehängt wird.txt“-Datei.

Diese Standardausgaben können auch mit einem einzigen Befehl umgeleitet werden, verwenden Sie:

$ls 1> Standard.txt 2> stderr.TXT

Die Ausgabe des „ls“-Befehls wird in das „stdout.TXT”-Datei, aber die “stderr.TXT” bleibt leer, da kein Fehler auftritt.

Jetzt machen wir für "stderr".TXT":

$cat myfile.txt 1> Standardausgabe.txt 2> stderr.TXT

Verwenden Sie den unten genannten Befehl, um „stderr“ zu lesen.TXT.”

$cat stderr.TXT

Und natürlich „stdout“.txt“ ist leer.

Fazit:

Der Linux-Befehl gibt bei der Ausführung eine Standardausgabe aus, die eine Erfolgsausgabe oder eine Fehlerausgabe sein kann. Im Allgemeinen können diese Ausgaben nicht mithilfe von Umleitungsoperatoren umgeleitet werden; Wir müssen bestimmte numerische IDs mit dem Zeichen „>“ verwenden. In diesem Handbuch haben wir gelernt, wie Sie diese numerischen Tasten verwenden, um die Standardausgabe in eine Datei mit Beispielen umzuleiten.

Top 5 ergonomische Computermaus-Produkte für Linux
Verursacht längere Computernutzung Schmerzen im Handgelenk oder in den Fingern?? Leiden Sie unter steifen Gelenken und müssen ständig die Hände schütt...
So ändern Sie die Maus- und Touchpad-Einstellungen mit Xinput in Linux
Die meisten Linux-Distributionen werden standardmäßig mit der Bibliothek „libinput“ ausgeliefert, um Eingabeereignisse auf einem System zu verarbeiten...
Weisen Sie Ihre Maustasten mit der X-Mouse Button Control für verschiedene Software unterschiedlich zu
Vielleicht benötigen Sie ein Tool, mit dem sich die Steuerung Ihrer Maus bei jeder von Ihnen verwendeten Anwendung ändern kann. In diesem Fall können ...