# "Print" qui n'apparaissent pas en ssh

**URL:** <https://www.debian-fr.org/t/print-qui-napparaissent-pas-en-ssh/82060>\
**Category:** Programmation\
**Created:** [Mai 11, 2020, 7:49 UTC](https://www.debian-fr.org/t/print-qui-napparaissent-pas-en-ssh/82060 "2020-05-11T07:49:02Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![Killjoy](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/k/c6cbf5/32.png) [@Killjoy](https://www.debian-fr.org/u/Killjoy)\
**Post date:** [Mai 11, 2020, 7:49 UTC](https://www.debian-fr.org/t/print-qui-napparaissent-pas-en-ssh/82060/1 "2020-05-11T07:49:02Z")

</div>

Bonjour à tous et merci à ceux qui m’aideront.

Voici mon problème, j’ai un script python sur un raspberry distant, script ponctué de print. Exécuter en local le script fonctionne normalement.

Je me connecte d’un autre poste via le terminal de debian en ssh et ça marche toujours très bien.

Par contre je crés un script pour automatiser la connections ssh dans une nouvelle fenêtre de terminal, je rentre mon mots de passe, mon script ce lance bien, mais dans cette nouvelle fenêtre je n’ai pas les retour de print…

Alors que quand je lance ce même script toujours via ssh mais dans une fenêtre terminal que j’ai ouverte a la main, pas de problème…

Je suis a court d’idées…

Merci

---

<div class="post-metadata">

**Author:** ![littlejohn75](https://www.debian-fr.org/user_avatar/www.debian-fr.org/littlejohn75/32/3840_2.png) [@littlejohn75](https://www.debian-fr.org/u/littlejohn75)\
**Post date:** [Mai 11, 2020, 10:43 UTC](https://www.debian-fr.org/t/print-qui-napparaissent-pas-en-ssh/82060/2 "2020-05-11T10:43:26Z")

</div>

> [@Killjoy](#):
>
> Par contre je crés un script pour automatiser la connections ssh dans une nouvelle fenêtre de terminal, je rentre mon mots de passe, mon script ce lance bien, mais dans cette nouvelle fenêtre je n’ai pas les retour de print…

Ce n’est pas d’une clarté limpide votre histoire. Vous utilisez le terme `script` pour deux choses très différentes et sans le contenu de ces fameux scripts il est quasiment impossible de comprendre ce qui se passe. En particulier celui qui crée la connexion ssh

A titre de test :

```auto
cat /tmp/ppy.py
#! /usr/bin/env python

print("par ssh\n")

```

```auto
fp2@debpacha:~$ chmod +x /tmp/ppy.py
fp2@debpacha:~$ /tmp/ppy.py
par ssh

fp2@debpacha:~$ ssh localhost /tmp/ppy.py
par ssh

fp2@debpacha:~$ 

```

Pourquoi faire simple quand on peut faire compliqué ?

Cordialement,  
Regards,  
Mit freundlichen Grüßen,  
مع تحياتي الخالصة

* * *

F. Petitjean  
Ingénieur civil du Génie Maritime.

« Celui qui, parti de rien, n’est arrivé nulle part n’a de merci à dire à personne !! »  
Pierre Dac

« Je préfère le vin d’ici à l’au-delà »  
Pierre Dac

---

<div class="post-metadata">

**Author:** ![Killjoy](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/k/c6cbf5/32.png) [@Killjoy](https://www.debian-fr.org/u/Killjoy)\
**Post date:** [Mai 11, 2020, 11:14 UTC](https://www.debian-fr.org/t/print-qui-napparaissent-pas-en-ssh/82060/3 "2020-05-11T11:14:38Z")

</div>

Bonjour,

Le script qui crée la connexion :

#!/bin/Bash

echo «&nbsp;run&nbsp;»  
Sleep 5  
lxterminal -e ssh user@xxx.xxx.x.xx python test.py

Rien d’autre …

---

<div class="post-metadata">

**Author:** ![littlejohn75](https://www.debian-fr.org/user_avatar/www.debian-fr.org/littlejohn75/32/3840_2.png) [@littlejohn75](https://www.debian-fr.org/u/littlejohn75)\
**Post date:** [Mai 11, 2020, 12:19 UTC](https://www.debian-fr.org/t/print-qui-napparaissent-pas-en-ssh/82060/4 "2020-05-11T12:19:26Z")

</div>

> [@Killjoy](#):
>
> ```auto
> lxterminal -e ssh user@xxx.xxx.x.xx python test.py
> 
> ```

Ajoutez l’option `-X ` (`X11 forwarding`)

Une autre solution consiste à copier le script `test.py` rendu exécutable avec la bonne en-tête pour préciser l’interpréteur python

```auto
chmod +x test.py
scp -p test.py user@dest:/tmp
ssh user@dest /tmp/test.py

```

pas vraiment besoin d’ouvrir un nouveau terminal graphique.

Cordialement,  
Regards,  
Mit freundlichen Grüßen,  
مع تحياتي الخالصة

* * *

F. Petitjean  
Ingénieur civil du Génie Maritime.

« On ne perd pas son temps en aiguisant ses outils. »  
Proverbe français

« Moi, lorsque je n’ai rien à dire, je veux qu’on le sache. » (R. Devos)

---

<div class="post-metadata">

**Author:** ![Killjoy](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/k/c6cbf5/32.png) [@Killjoy](https://www.debian-fr.org/u/Killjoy)\
**Post date:** [Mai 11, 2020, 1:55 UTC](https://www.debian-fr.org/t/print-qui-napparaissent-pas-en-ssh/82060/5 "2020-05-11T13:55:32Z")

</div>

- l’option -X ne change rien. Pas de print.

- Envoyer le test.py via scp n’affiche pas les retours de print non plus. J’ai besoin que ce soit envoyé dans une autre fenètre de terminal, à terme se sera plusieurs connexions ssh qui seront établie et j tiens à voir les retours.

Pour infos l’entête de mon fichier python sur la machine distante est:

#!/usr/bin/python

Pour plus de précision à nouveau, en local, j’ouvre un terminal, je me connecte en ssh à la machine distante, le lance mon test.py… Je vois bien mes retours print.  
Par contre mon scirpt du dessus qui fait pour moi la même chose mais automatisé et dans un nouveau terminal, je ne vois pas les prints…

Je suis passé a cote de quelque choses ?

---

<div class="post-metadata">

**Author:** ![Clochette](https://www.debian-fr.org/user_avatar/www.debian-fr.org/clochette/32/8757_2.png) [@Clochette](https://www.debian-fr.org/u/Clochette)\
**Post date:** [Mai 11, 2020, 5:25 UTC](https://www.debian-fr.org/t/print-qui-napparaissent-pas-en-ssh/82060/6 "2020-05-11T17:25:45Z")

</div>

Pourquoi ne pas utiliser un screen pour ça, tu n’aurait qu’a te rattacher à ton screen pour consulter tes _prints_.  
Le mieux serait tout de même d’envoyer tes print dans la stdout, mais si tu lance plusieurs scripts simultanément ça va être le bordel pour trier tes sorties 😉

---

<div class="post-metadata">

**Author:** ![Killjoy](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/k/c6cbf5/32.png) [@Killjoy](https://www.debian-fr.org/u/Killjoy)\
**Post date:** [Mai 11, 2020, 8:35 UTC](https://www.debian-fr.org/t/print-qui-napparaissent-pas-en-ssh/82060/7 "2020-05-11T20:35:18Z")

</div>

Tu n’as perdu avec la stdout… De ce que j’ai lus c’est pour redirigé la sorti de l’écran vers un fichier, c’est ca ?

---

<div class="post-metadata">

**Author:** ![Killjoy](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/k/c6cbf5/32.png) [@Killjoy](https://www.debian-fr.org/u/Killjoy)\
**Post date:** [Mai 11, 2020, 9:47 UTC](https://www.debian-fr.org/t/print-qui-napparaissent-pas-en-ssh/82060/8 "2020-05-11T21:47:05Z")

</div>

Bon j’ai contourné le problème…

Plutot que des print, j’ai remplacé par des os.system(«&nbsp;echo…&nbsp;») et plus de problème…

Merci.

---

<div class="post-metadata">

**Author:** ![littlejohn75](https://www.debian-fr.org/user_avatar/www.debian-fr.org/littlejohn75/32/3840_2.png) [@littlejohn75](https://www.debian-fr.org/u/littlejohn75)\
**Post date:** [Mai 11, 2020, 10:31 UTC](https://www.debian-fr.org/t/print-qui-napparaissent-pas-en-ssh/82060/9 "2020-05-11T22:31:09Z")

</div>

> [@Killjoy](#):
>
> Par contre mon scirpt du dessus qui fait pour moi la même chose mais automatisé et dans un nouveau terminal, je ne vois pas les prints…

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

```auto
cat /tmp/ppy.py
#! /usr/bin/env python

import getpass

print( getpass.getuser() )

raw_input("press any key")

```

```auto
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

```auto
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

---

<div class="post-metadata">

**Author:** ![Killjoy](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/k/c6cbf5/32.png) [@Killjoy](https://www.debian-fr.org/u/Killjoy)\
**Post date:** [Mai 12, 2020, 7:17 UTC](https://www.debian-fr.org/t/print-qui-napparaissent-pas-en-ssh/82060/10 "2020-05-12T07:17:17Z")

</div>

> Non et non ! le script bash ne fait pas la même chose que ce que vous faites à la main.

Je le soupçonne bien sinon je n’aurais pas de problème…

> raw\_input(«&nbsp;press any key&nbsp;»)

oui effectivement c’est un problème.

La proposition de clochette avec screen m’interresé bien. Hier soir j’ai installé screen pour essaie. J’ai créé plusieurs screen et rencontré des difficultés lorsque je voulais tous les afficher dans un terminal scindé. Pas moyen de ce rattaché a certain mais pas a d’autre…  
Je n’ai pas chercher très loin… désinstallé…

Je ferrai des essaies avec tmux dans la journée.

Merci.

---

<div class="post-metadata">

**Author:** ![Almtesh](https://www.debian-fr.org/user_avatar/www.debian-fr.org/almtesh/32/10312_2.png) [@Almtesh](https://www.debian-fr.org/u/Almtesh)\
**Post date:** [Mai 12, 2020, 3:29 UTC](https://www.debian-fr.org/t/print-qui-napparaissent-pas-en-ssh/82060/11 "2020-05-12T15:29:32Z")

</div>

Question con, es-tu sûr que ton script s’exécute bien par SSH, bien que les print n’affichent rien ?

---

<div class="post-metadata">

**Author:** ![Killjoy](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/k/c6cbf5/32.png) [@Killjoy](https://www.debian-fr.org/u/Killjoy)\
**Post date:** [Mai 12, 2020, 6:43 UTC](https://www.debian-fr.org/t/print-qui-napparaissent-pas-en-ssh/82060/12 "2020-05-12T18:43:32Z")

</div>

Oui pas de soucis je me renvoie des fichier issu de ce python via scp, et tout arrive bien.
