Essayez ceci:
(myCommand | sed s/^/stdout:/ >> myLogfile) 2>&1 | sed s/^/stderr:/ >> myLogFile
Le premier tuyau insère un préfixe stdout:
à la sortie standard de myCommand
et l'ajoute myLogFile
.
Les parenthèses sont utilisées pour faire une seule commande de tout cela. Ils indiquent que d'autres redirections s'appliquent à ce qui est entre parenthèses et non à sed
uniquement.
Ensuite, l'erreur standard est redirigée vers la sortie standard avec 2>&1
(rappelez-vous que la sortie standard d'origine a déjà été redirigée vers un myLogFile
). Le deuxième canal insère un préfixe stderr:
et l'ajoute à myLogFile
.
a choisi cette réponse, car il est préférable de préserver l'ordre, même si vous devez rincer la sortie tout le temps ... –