[BASH] Logs - Redirection de la sortie standard pour l’ensemble d’un script
Il est parfois utile de rediriger l’ensemble de la sortie standard vers un fichier.
Pour se faire 2 solutions,
- soit nous utilisons le caractère de redirection ">" pour chaque ligne de code ou pour l’ensemble de l’exécution du programme "./toto.sh > logfile.txt"
- soit nous utilisons la commande exec de la façon suivante
#!/bin/bash LOGFILE=logfile.txt # Lier le descripteur 6 avec stdout dans le but de sauvegarder stdout exec 6>&1 # Stdout est maintenant remplacé par le fichier "logfile.txt" exec > $LOGFILE # ----------------------------------------------------------- # # Toutes les sorties standards sont maintenant redirigées vers le fichier echo "affichage redirigé dans un fichier" # ----------------------------------------------------------- # # Restauration de la sortie standard et fermeture du descripteur de fichier 6 exec 1>&6 6>&- # Retour à la normale echo "affichage normal" exit 0
Accueil > Linux > Développement > [BASH] Logs - Redirection de la sortie standard pour l’ensemble d’un script