J'ai un script python qui doit appeler le $EDITOR
ou $VISUAL
défini. Lorsque le script Python est appelé seul, je peux lancer le $EDITOR
sans accroc, mais au moment où je redirige quelque chose vers le script Python, le $EDITOR
est incapable de se lancer. En ce moment, je me sers nano qui montreImpossible de lancer le programme interactif pendant que vous redirigez vers un script en Python
reçu SIGHUP ou SIGTERM
chaque fois. Il semble que ce soit le même numéro described here.
sinister:Programming [1313]$ echo "import os;os.system('nano')" > "sample.py"
sinister:Programming [1314]$ python sample.py
# nano is successfully launched here.
sinister:Programming [1315]$ echo "It dies here." | python sample.py
Received SIGHUP or SIGTERM
Buffer written to nano.save.1
EDIT: Clarification; à l'intérieur du programme, je ne passe pas à l'éditeur. Le code est le suivant:
editorprocess = subprocess.Popen([editor or "vi", temppath])
editorreturncode = os.waitpid(editorprocess.pid, 0)[1]
Pouvez-vous coller un code de reproduction facile? :) – sarnold
Vous ne pouvez pas vous attraper, voulez-vous démarrer un éditeur à partir d'un script python et garder l'entrée du terminal comme entrée standard? –
@xiao Oui, c'est ce que je voulais faire. La solution de Nicholas fait juste cela. –