4 votes

Modifier la sortie d'un processus vers le terminal ssh

J'ai un simple script Python script :

import time
counter = 0
while True:
    print counter
    counter = counter + 1
    time.sleep(10)

Disons que ce programme est exécuté sur ma linuxbox au sein du réseau local et qu'il imprime la sortie dans le terminal de la linuxbox. Si je dois ssh dans ce serveur, je veux voir l'état des counter variable. En d'autres termes, je veux changer l'entrée/sortie du programme du terminal par défaut à ssh terminal.

Jusqu'à présent, j'ai essayé de mettre le processus en arrière-plan en utilisant fg sans succès.

Voici un aperçu (de ssh terminal)

jarwin@ubuntu:~$ ps -a
  PID TTY          TIME CMD
30412 pts/1    00:00:02 python
30591 pts/10   00:00:00 ps
jarwin@ubuntu:~$ fg %30412
-bash: fg: %30412: no such job
jarwin@ubuntu:~$ top | grep gnome
27337 azazel    20   0  625656  35804  24676 S  0.3  1.4   1:03.01 gnome-terminal-        
jarwin@ubuntu:~$ fg %27337
-bash: fg: %27337: no such job

Est-ce possible ? Et au cas où Python ne le permettrait pas, est-il possible de passer à ssh pour une commande ping ?

PS : J'utilise JuiceSSH sur Android comme client ssh

3voto

Jakuje Points 6207

Vous pouvez tenter votre chance avec tmux ou screen qui vous permet de vous connecter à des sessions de terminal existantes.

L'autre solution que j'envisagerais serait d'utiliser un fichier temporaire, dans lequel vous écririez la sortie (si la sortie est une sorte de journal), puis de suivre les nouvelles lignes dans le fichier à l'aide de la fonction tail -f .

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X