Comment rediriger Stdout vers un fichier en Python ?
Lors de l'exécution d'un script Python de longue durée dans une session SSH et de sa mise en arrière-plan, le script peut échouer en raison d'une IOError lors de l'écriture sur stdout si la session SSH est fermée. Ce problème peut être résolu en redirigeant la sortie standard vers un fichier.
Utilisation de la redirection Stdout de Python
Une approche consiste à rediriger la sortie standard dans le script Python à l'aide du module sys :
import sys with open('file.txt', 'w') as sys.stdout: print('Example text')
Utiliser Shell Redirection
Une solution plus simple consiste à utiliser la redirection shell lors de l'exécution du script :
$ python3 script.py > file.txt
Cela dirige la sortie stdout vers le fichier spécifié. Notez que cette méthode est indépendante de la plate-forme (fonctionne à la fois sous Windows et Linux).
Limitations
La définition de sys.stdout sur un fichier peut ne pas empêcher tous les modules de sortir. au terminal. Dans de tels cas, la redirection shell est une solution plus fiable.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!