En Perl, après fork()
ing je peux rediriger la sortie standard d'un enfant dans un fichier comme siPerl, redirect stdout mais gardez le parent
open STDOUT,">",$filename or die $!
Je me demande s'il y a un moyen de « copier », en gardant stdout sur la sortie stdout du parent mais aussi en le copiant dans un fichier spécifié. Cela devrait se faire d'une manière qui ne nécessiterait aucune mise en mémoire tampon et l'utilisateur verrait la sortie de la console en temps réel. Cela serait en quelque sorte comme l'unix tee
. Mais idéalement, la solution n'impliquerait pas de bibliothèques tierces.
Vous avez mentionné "idéalement" que la solution n'impliquerait pas de bibliothèques tierces, mais pour la postérité, IO :: Tee a été écrit pour résoudre ce problème et le fait très bien. – cikkle
Je suppose qu'il devrait y avoir une façon simple de le faire en utilisant la construction dans le fichier io – Mike