Non et non ! le script bash ne fait pas la même chose que ce que vous faites à la main.
Comme vous combinez des commandes qui lancent une autre commande
- ssh <user@>host cmmande…
- lxterminal -e commande;;;
l’ordre dans lequel vous combinez est très important
Voici un exemple
cat /tmp/ppy.py
#! /usr/bin/env python
import getpass
print( getpass.getuser() )
raw_input("press any key")
ssh -X localhost "xterm -e /tmp/ppy.py"
et vous voyez que j’ai été obligé d’ajouter un raw_input
pour bloquer la fermeture intempestive de la fenêtre graphique. C’est une solution bâtarde car elle suppose que vous avez un émulateur de terminal sur la machine distante.
Comme l’a remarqué très justement @Clochette il est beaucoup plus judicieux d’utiliser un multiplexeur de terminal texte (programme screen
ou tmux
).
Si c’est le raspberry qui tourne H24, il est plus simple d’installer tmux
sur ce système, vous pourrez retrouvez vos sessions de la manière suivante
ssh user@pi
# retrouver le numéro de la session éventuelle
tmux list-sessions
tmux # si pas de session trouvée
tmux attach-session -t <num> # sinon
....
# terminé : on détache (tous les onglets d'un coup )
<prefix> d # prefix : Ctrl B par défaut
# on se retrouve dans le shell de connexion sur le pi
exit # on ferme la connexion ssh
Les sessions tmux
sont persistantes et si votre serveur n’est pas redémarré souvent, vous pouvez retrouver ce que vous avez fait il y a un ou plusieurs mois
Cordialement,
Regards,
Mit freundlichen Grüßen,
مع تحياتي الخالصة
F. Petitjean
Ingénieur civil du Génie Maritime.
« L’arbre tombe toujours du côté où il penche. »
Proverbe français