En ce moment je suis en utilisant exec pour rediriger stderr dans un journal d'erreur avecAppend texte à stderr réoriente dans bash
exec 2>> ${errorLog}
Le seul inconvénient est que je dois commencer chaque série avec un horodatage depuis exec pousse juste le texte directement dans le fichier journal. Est-il possible de rediriger stderr mais permettez-moi de lui ajouter du texte, comme un horodatage?
$ foo() {alors que IFS = '' read -r line; fais echo "$ (date) $ line" >> fichier.txt; terminé; } $ exec 2>> (foo) Avertissement: Le programme '/ bin/bash' s'est écrasé. whoops – Peter
Mais si je change ça en: echo 2 | tee> (foo), alors ça marche bien. – Peter
Dans la question, chaque ligne est ajoutée à un fichier déjà ouvert. Dans la réponse, le fichier journal est ouvert pour chaque ligne. Et une recherche à la fin du fichier est également nécessaire. Il peut être préférable de faire un second 'exec' dans' foo'. – ceving