accueil > Environnement & utilitaires > redirect

Guide de Redirection : Changer la direction des entrées/sorties de commandes

La redirection dans le shell Linux est une fonctionnalité qui permet de modifier la direction des entrées/sorties standard (standard input/output) d'une commande. Elle est utilisée pour prendre le contenu d'un fichier comme entrée ou pour enregistrer le résultat d'une commande dans un fichier plutôt que de l'afficher à l'écran. C'est l'un des outils les plus fondamentaux du scripting shell et du traitement de données, aux côtés des pipes (`|`).

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`.


commandes associées

Des commandes fonctionnellement similaires ou souvent utilisées ensemble.


Commandes de la même catégorie