将进程的输出更改为 ssh 终端

将进程的输出更改为 ssh 终端

我有一个简单的python脚本:

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

假设这个程序在我的局域网内的 linuxbox 上运行,并将输出打印到 linuxbox 的终端。如果我要ssh进入该服务器,我想查看变量的状态counter。换句话说,我想将程序的 I/O 从默认终端更改为ssh终端。

到目前为止,我已经尝试过通过使用将该过程置于后台,fg但没有成功。

这是快照(来自ssh终端)

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

可以这样做吗?如果 python 不允许这样做,是否可以切换到ssh终端来执行 ping 命令?

PS:我正在使用JuiceSSH在 Android 上作为我的 ssh 客户端

答案1

你可以试试运气tmux或者screen,它允许您连接到现有的终端会话。

我会考虑的另一种解决方法是使用一些临时文件,您可以在其中写入输出(如果输出是日志类型),然后使用 按照文件中的新行进行操作tail -f

相关内容