GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

RHEL 7 – RHCSA-Hinweise – Eingabe-/Ausgabeumleitung

RHEL 7 – RHCSA-Hinweise (Spickzettel)

Drei Standard-Dateideskriptoren:

1. stdin 0 - Standard input to the program.
2. stdout 1 - Standard output from the program.
3. stderr 2 - Standard error output from the program.
Zweck Befehl
Standardausgabe auf Dateiname umleiten > Dateiname oder 1> Dateiname
std an Dateinamen anhängen >> Dateiname
hängen Sie std out und std err an den Dateinamen an >> Dateiname 2>&1 oder 1>> Dateiname 2>&1
Eingabe aus Dateiname übernehmen
Standardfehler auf Dateinamen umleiten 2> Dateiname
std out und std error to filename umleiten 1> Dateiname 2>&1 oder> Dateiname 2>&1

Einige Beispiele für die Verwendung der E/A-Umleitung

# cat goodfile badfile 1> output 2> errors

Dieser Befehl leitet die normale Ausgabe (Inhalt von goodfile) auf die Dateiausgabe um und sendet alle Fehler (z. B. über nicht vorhandene badfile) an die Datei error.

# mail user_id < textfile 2> errors

Dieser Befehl leitet die Eingabe für den Mail-Befehl so um, dass sie von der Datei textfile kommt, und alle Fehler werden in die Datei error.

umgeleitet
# find / -name xyz -print 1> abc 2>&1

Dieser Befehl leitet die normale Ausgabe in die Datei abc. Das Konstrukt „2>&1“ sagt „Fehlerausgabe an die gleiche Stelle senden, an die wir die normale Ausgabe geleitet haben“.

Beachten Sie, dass die Reihenfolge wichtig ist; Befehl 2>&1 1>Datei macht nicht dasselbe wie Befehl 1>Datei 2>&1. Dies liegt daran, dass die 2>&1-Konstruktion bedeutet, dass Standardfehler an die Stelle umgeleitet werden, an die die Standardausgabe derzeit geht. Der Konstruktionsbefehl 2>&1 1>file leitet die Standardfehler zuerst dorthin um, wohin die Standardausgabe geht (wahrscheinlich das Terminal, wo die Standardfehler sowieso standardmäßig hingehen), und leitet dann die Standardausgabe in die Datei um. Das war wahrscheinlich nicht beabsichtigt.
# ( grep Bob filex > out ) 2> err

– Jede Ausgabe des Befehls grep wird an die Datei out gesendet und alle Fehler werden an die Datei err.

gesendet
# finden . -name xyz -print 2>/dev/null 

Dies führt den Befehl find aus, sendet jedoch alle Fehlerausgaben (z. B. aufgrund von nicht zugänglichen Verzeichnissen) an /dev/null. Verwenden Sie es mit Vorsicht, es sei denn, die Fehlerausgabe ist wirklich uninteressant.


Cent OS
  1. RHEL 7 – RHCSA-Hinweise (Spickzettel)

  2. RHEL 7 – RHCSA-Hinweise:Ändern Sie Passwörter und passen Sie die Passwortalterung für lokale Benutzerkonten an

  3. RHEL 7 – RHCSA-Hinweise:Lokale Gruppen und Gruppenmitgliedschaften erstellen, löschen und ändern.

  4. RHEL 7 – RHCSA-Hinweise:Lokale Benutzerkonten erstellen, löschen und ändern

  5. RHEL 7 – RHCSA Hinweise:Konfigurieren Sie ein System für die Verwendung von Zeitdiensten

Eingabe-Ausgabe-Umleitung unter Linux erklärt

Erklärt:Eingabe-, Ausgabe- und Fehlerumleitung in Linux

Prozesssubstitution:Eine ungewöhnliche, aber fortschrittliche Methode zur Eingabe-/Ausgabeumleitung in Linux

Shell-Scripting Teil 4 – Eingabe, Ausgabe und Umleitung

RHEL 7 – RHCSA-Hinweise – vi/vim-Editor

Interpretieren von dd Input/Output-Fehler