0% ont trouvé ce document utile (0 vote)
13 vues4 pages

Signe Redirection

Maitriser tous les signes de redirection en bash

Transféré par

waltdgtl
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats ODT, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
13 vues4 pages

Signe Redirection

Maitriser tous les signes de redirection en bash

Transféré par

waltdgtl
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats ODT, PDF, TXT ou lisez en ligne sur Scribd

Les signes de redirection en Bash sont utilisés pour manipuler le flux d'entrée et de sortie des

commandes dans le terminal. Ils permettent de rediriger les entrées et les sorties des programmes
ou de gérer les fichiers, en modifiant la façon dont les données sont envoyées ou reçues.
Voici une explication détaillée de chaque signe de redirection dans Bash :

1. Redirection de la sortie standard (stdout)


> : Rediriger la sortie vers un fichier (écraser le fichier)
• Utilisé pour rediriger la sortie standard (par défaut vers le terminal) vers un fichier.
• Si le fichier existe déjà, son contenu sera écrasé.
Exemple :
echo "Bonjour tout le monde" > fichier.txt

Cela écrira "Bonjour tout le monde" dans fichier.txt. Si le fichier existe déjà, il sera écrasé.

>> : Ajouter la sortie à la fin d'un fichier (ajouter au fichier)


• Utilisé pour rediriger la sortie vers un fichier, mais ajouter les données à la fin du fichier
sans écraser son contenu.
Exemple :
echo "Salut tout le monde" >> fichier.txt

Cela ajoutera "Salut tout le monde" à la fin de fichier.txt.

2. Redirection de l'entrée standard (stdin)


< : Rediriger l'entrée depuis un fichier
• Permet de prendre un fichier comme entrée au lieu de taper des données dans le terminal.
Exemple :
sort < fichier.txt

Cela trie le contenu de fichier.txt en utilisant la commande sort.

3. Redirection des erreurs (stderr)


2> : Rediriger les erreurs vers un fichier
• Utilisé pour rediriger les messages d'erreur (flux stderr) vers un fichier.

Exemple :
ls fichier_inexistant 2> erreurs.txt
Cela tente de lister un fichier inexistant et redirige l'erreur vers erreurs.txt.

2>> : Ajouter les erreurs à la fin d'un fichier


• Similaire à 2>, mais ajoute les erreurs au fichier au lieu de l'écraser.

Exemple :
ls fichier_inexistant 2>> erreurs.txt

Cela ajoute l'erreur générée par la tentative de listing de fichier_inexistant à


erreurs.txt.

4. Redirection de la sortie standard et des erreurs simultanément


&> : Rediriger à la fois stdout et stderr vers un fichier (écraser)
• Cette redirection permet de rediriger à la fois la sortie standard et la sortie d'erreur vers un
fichier.
Exemple :
command &> sortie_et_erreurs.txt

Cela redirige à la fois la sortie normale (stdout) et les erreurs (stderr) vers
sortie_et_erreurs.txt.

&>> : Ajouter la sortie et les erreurs à la fin d'un fichier


• Similaire à &>, mais ajoute les sorties et erreurs à la fin du fichier sans l'écraser.

Exemple :
command &>> sortie_et_erreurs.txt

Cela ajoute à la fin de sortie_et_erreurs.txt toutes les sorties et erreurs générées par la
commande.

5. Redirection de l'entrée et de la sortie (flux combinés)


<< : Redirection "ici-document" (here document)
• Permet de fournir un contenu multi-lignes directement dans la commande via un délimiteur
spécifique.
• Utilisé pour fournir un bloc de texte comme entrée à une commande.
Exemple :
cat << EOF
Ceci est une ligne
Ceci est une autre ligne
EOF
Le texte entre << EOF et EOF est utilisé comme entrée de la commande cat, qui affiche ces
lignes.

<<< : Redirection "ici-string" (here string)


• Permet de fournir une chaîne de caractères simple comme entrée pour une commande.
Exemple :
grep "mot" <<< "Voici une phrase contenant le mot."

Cela passe la chaîne "Voici une phrase contenant le mot." comme entrée à grep pour rechercher
"mot".

6. Redirection des descripteurs de fichiers


Les descripteurs de fichiers permettent de gérer des flux autres que ceux standards (entrées, sorties,
erreurs).

3> : Rediriger vers un autre descripteur de fichier


• Permet de rediriger la sortie vers un descripteur de fichier personnalisé.
Exemple :
echo "Ceci est un message" 3> fichier3.txt

Cela redirige la sortie vers un descripteur de fichier numéro 3, et dans cet exemple, vers
fichier3.txt.

&1 : Rediriger la sortie d'un descripteur de fichier vers un autre


• Permet de rediriger la sortie d'un flux (par exemple, stderr ou un autre descripteur) vers
un autre flux, comme stdout.

Exemple :
command 2>&1

Cela redirige les erreurs (stderr, flux 2) vers la sortie standard (stdout, flux 1).

7. Pipeline
| : Pipe (tuyau)
• Permet de rediriger la sortie d'une commande directement comme entrée pour une autre
commande.
Exemple :
ls | sort
Cela prend la sortie de ls (la liste des fichiers) et la passe en entrée à la commande sort pour trier
les fichiers.

|& : Rediriger à la fois stdout et stderr vers une commande


• Semblable à |, mais redirige à la fois la sortie normale et les erreurs vers une autre
commande.
Exemple :
command |& grep "erreur"

Cela passe à grep à la fois la sortie normale et les erreurs de la commande, à la recherche du mot
"erreur".

Résumé des signes de redirection


Signe Description Exemple
Redirige stdout vers un fichier
> echo "Bonjour" > fichier.txt
(écrasement)
>> Ajoute stdout à la fin d'un fichier echo "Salut" >> fichier.txt
< Redirige l'entrée depuis un fichier sort < fichier.txt
ls fichier_inexistant 2>
2> Redirige stderr vers un fichier
erreurs.txt
ls fichier_inexistant 2>>
2>> Ajoute stderr à la fin d'un fichier
erreurs.txt
Redirige à la fois stdout et stderr vers command &>
&>
un fichier sortie_et_erreurs.txt
Ajoute stdout et stderr à la fin d'un command &>>
&>>
fichier sortie_et_erreurs.txt

<< "Here document", fournit un contenu multi- cat << EOF


lignes en entrée
"Here string", fournit une chaîne simple grep "mot" <<< "Voici une
<<<
comme entrée phrase"
Pipe, redirige stdout vers une autre
| |
commande
Redirige stdout et stderr vers une autre
|& |&
commande

Les redirections sont un élément fondamental de l'utilisation du shell Bash, car elles permettent une
gestion plus fine des flux de données et une automatisation plus puissante des tâches.

Vous aimerez peut-être aussi