web-dev-qa-db-fra.com

Comment rediriger stdout et stderr vers un fichier

J'exécute un script bash qui crée un fichier journal pour l'exécution de la commande

J'utilise le suivant

Command1 >> log_file
Command2 >> log_file

Ceci n’envoie que la sortie standard et non l’erreur standard qui apparaît sur le terminal.

Puis-je connecter les stderr et stdout enregistrés dans un fichier?

270
sdmythos_gr

Si vous souhaitez vous connecter au même fichier:

command1 >> log_file 2>&1

Si vous voulez des fichiers différents:

command1 >> log_file 2>> err_file
400
Mat

La syntaxe la plus simple pour rediriger les deux est la suivante:

command &> logfile

Si vous souhaitez ajouter au fichier au lieu d’écraser:

command &>> logfile
183
Costi Ciudatu

Vous pouvez le faire comme ça 2> & 1:

 command > file 2>&1
32
Laurent Legrand

Utilisation:

command >>log_file 2>>log_file
5
blankabout

Veuillez utiliser command 2>file Ici 2 correspond au descripteur de fichier de stderr. Vous pouvez également utiliser 1 au lieu de 2 pour que stdout soit redirigé vers le 'fichier'

1
PaulDaviesC