Sur mon CentOS, j'essaie d'exécuter un script php contenant une boucle infinie pour créer des éléments sophistiqués. Peu importe qu'une boucle sans fin ne soit pas une solution précise dans la plupart des cas, mais bien pour mon test. Si une erreur survient dans cette boucle, l'erreur est écrite dans un fichier de sortie (comme c'est le cas de stdout). C'est ce que je fais en ce moment.
exec php testfile.php >> output.log 2>&1
Cela fonctionne comme prévu, mais je veux savoir quand stdout ou stderr écrit quelque chose dans le fichier, j'ai donc besoin d'une sorte d'horodatage sur chaque ligne.
J'ai déjà essayé quelque chose comme ça , mais si je le fais comme indiqué ici, il n'y a tout simplement aucune sortie (je suppose que c'est parce que ce n'est pas un simple script shell).
Est-il possible de rediriger chaque echo
de testfile.php et chaque erreur de stderr vers output.log avec un horodatage sur chaque ligne?
echo "Test";
. Mais rien n'est écrit dans le fichier de sortie s'il seecho
trouve dans la boucle infinie mentionnée. Se pourrait-il qu'en raison de cette boucle et que l'exécution ne se termine jamais, aucune sortie ne soit écrite?