D'accord. Si je voulais rediriger la sortie d'un programme vers un fichier, je ferais quelque chose comme ça
prog > file
Si je voulais rediriger à la fois stdout et stderr vers ce fichier, alors je le ferais
prog > file 2>&1
C'est très bien si vous voulez que la sortie aille dans le fichier. Mais que se passe-t-il si vous voulez que la sortie aille dans le fichier tout en continuant à stdout/stderr ? Ainsi, la sortie est enregistrée dans le fichier, mais vous pouvez toujours la voir sur la console pendant que le programme est en cours d'exécution. Y-a-t-il un moyen de faire ça? Et si oui, comment ?
Réponse acceptée :
tee
existe à cet effet ; il prend un argument de nom de fichier et écrit les données qu'il lit de stdin à la fois à stdout et au fichier :
$ prog 2>&1 | tee file