GNU/Linux >> Tutoriels Linux >  >> Cent OS

RHEL 7 – RHCSA Notes – redirection entrée/sortie

RHEL 7 - Remarques RHCSA (aide-mémoire)

Trois descripteurs de fichiers standards :

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.
Objectif Commande
rediriger la sortie std vers le nom de fichier > nom de fichier ou 1> nom de fichier
ajouter std out au nom de fichier >> nom de fichier
ajouter std out et std err au nom de fichier >> nom de fichier 2>&1 ou 1>> nom de fichier 2>&1
prendre l'entrée du nom de fichier
rediriger l'erreur std vers le nom de fichier 2> nom de fichier
rediriger la sortie std et l'erreur std vers le nom de fichier 1> nom de fichier 2>&1 ou> nom de fichier 2>&1

Quelques exemples d'utilisation de la redirection d'E/S

# cat goodfile badfile 1> output 2> errors

Cette commande redirige la sortie normale (contenu de goodfile) vers la sortie du fichier et envoie toute erreur (à propos de badfile inexistant, par exemple) vers le fichier errors.

# mail user_id < textfile 2> errors

Cette commande redirige l'entrée pour que la commande mail provienne du fichier textfile et toutes les erreurs sont redirigées vers le fichier errors.

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

Cette commande redirige la sortie normale vers le fichier abc. La construction "2> &1" indique "envoyer la sortie d'erreur au même endroit où nous avons dirigé la sortie normale".

Notez que l'ordre est important; la commande 2>&1 1>fichier ne fait pas la même chose que la commande 1>fichier 2>&1. En effet, la construction 2>&1 signifie rediriger l'erreur standard vers l'endroit où se trouve actuellement la sortie standard. La commande de construction 2>&1 1>fichier redirigera d'abord l'erreur standard vers l'endroit où la sortie standard va (probablement le terminal, où l'erreur standard va de toute façon par défaut) puis redirigera la sortie standard vers le fichier. Ce n'est probablement pas ce qui était prévu.
# ( grep Bob filex > out ) 2> err

– toute sortie de la commande grep est envoyée au fichier out et toutes les erreurs sont envoyées au fichier err.

# trouver . -name xyz -print 2>/dev/null 

Cela exécute la commande find, mais envoie toute sortie d'erreur (due à des répertoires inaccessibles, par exemple) à /dev/null. À utiliser avec précaution, à moins que la sortie d'erreur ne présente vraiment aucun intérêt.


Cent OS
  1. Utilisation de l'entrée-sortie et de la redirection d'erreur sous Linux

  2. RHEL 7 - Notes RHCSA - Définir les modes d'application et permissifs pour SELinux

  3. RHEL 7 - Notes RHCSA - Créer et gérer des listes de contrôle d'accès (ACL)

  4. RHEL 7 – Notes RHCSA – éditeur vi/vim

  5. Interprétation dd Erreur d'entrée/sortie

Redirection d'entrée/sortie sous Linux/Unix

Explication de la redirection d'entrée-sortie sur Linux

Explication :Redirection des entrées, des sorties et des erreurs sous Linux

Substitution de processus :une méthode peu courante mais avancée pour la redirection d'entrée/sortie sous Linux

Shell Scripting Part4 - Entrée, sortie et redirection

RHEL 7 – RHCSA Notes :Planifier des tâches en utilisant at et cron