Bonjour,
Parce que j'aime bien quand tout fonctionne tout seul, je suis en train de créer un petit script Bash pour compiler et empaqueter dans un AppImage un logiciel, à savoir le La Bataille pour Wesnoth. Seulement, j'utilise la commande appimage-builder --generate pour créer la recette de mon AppImage, et ce script est interactif. Il demande de valider des entrées, de les modifier au besoin et de sélectionner avec les touches du clavier un choix dans une liste. Les questions sont toutes prédictibles, on peut donc théoriquement l'insérer dans un script. Mais après plusieurs essais avec des echos et des pipes, il me sort toujours la même erreur :
Warning: Input is not a terminal (fd=0).
--- some traceback ---
File "/usr/local/lib/python3.9/dist-packages/prompt_toolkit/application/application.py", line 740, in _run_async
result = await f
EOFError
Il semble détecter que ce n'est pas un humain qui est derrière le clavier.
J'ai essayé avec un script python+ncurse, même résultat.
Si vous avez des réponses ou des solutions à apporter, elles sont les bienvenues !
# commande expect
Posté par norbs . Évalué à 5.
La commande linux pour répondre à ce type de problème est "expect" qui permet de simuler un terminal. Je ne peux pas t'en dire beaucoup plus, je ne l'ai plus utilisée depuis qques années.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.