Vue d'ensemble de la Redirection
Dans les systèmes Linux, toutes les entrées/sorties sont traitées comme des fichiers. La redirection permet de modifier la direction de ces flux d'entrée/sortie standard, de sorte que le résultat d'une commande soit écrit dans un fichier au lieu d'être affiché à l'écran, ou que le contenu d'un fichier soit utilisé comme entrée pour une commande.
Flux d'entrée/sortie standard
Toutes les commandes utilisent par défaut les trois flux standard suivants :
- Entrée standard (stdin, 0): Le canal par lequel une commande lit les données. La valeur par défaut est le clavier.
- Sortie standard (stdout, 1): Le canal par lequel le résultat normal d'une commande est affiché. La valeur par défaut est l'écran (terminal).
- Erreur standard (stderr, 2): Le canal par lequel les messages d'erreur d'une commande sont affichés. La valeur par défaut est l'écran (terminal).
Opérateurs de Redirection
Vous pouvez contrôler la direction des entrées/sorties à l'aide de divers opérateurs de redirection. L'utilisation directe de 'redirect' comme les commandes générées ci-dessous entraînera une erreur. Vous devez impérativement utiliser des symboles tels que >, >>, <, etc.
1. Redirection de la sortie standard
2. Redirection de l'erreur standard
3. Redirection de l'entrée standard
Commande générée :
Essayez de combiner les commandes.
Description:
`redirect` Exécute la commande.
Essayez d'exécuter virtuellement les commandes avec l'IA en combinant les options ci-dessus.
Exemples Courants
Découvrez comment contrôler les entrées/sorties à travers divers exemples utilisant la redirection.
Enregistrer le résultat d'une commande dans un fichier
ls -l > file_list.txt
Enregistre le résultat de la commande `ls -l` dans le fichier `file_list.txt`, en écrasant le fichier s'il existe déjà.
Ajouter les résultats de plusieurs commandes à un seul fichier
echo "--- Début de l'opération ---" >> log.txt
date >> log.txt
Ajoute le résultat de la commande `echo` au fichier `log.txt`, puis ajoute le résultat de la commande `date` au même fichier. Utilise `>>` pour préserver le contenu existant.
Séparer les messages d'erreur dans un fichier distinct
ls non_existent_file 2> error.log
Exécute la commande `ls` sur un fichier inexistant et redirige uniquement les messages d'erreur (`2>`) vers le fichier `error.log`. La sortie normale apparaît toujours à l'écran.
Passer un fichier d'entrée à une commande
sort < numbers.txt
Spécifie le fichier `numbers.txt` comme entrée pour la commande `sort` afin de trier le contenu du fichier. `sort` traite le contenu du fichier comme entrée standard.
Sortie et erreur dans un seul fichier
ls /home non_existent_file &> output_and_error.log
Enregistre à la fois la sortie normale et les messages d'erreur dans le fichier `output_and_error.log`.