我早些时候离开办公室,在Centos 7服务器上运行脚本的活动终端窗口.现在我在家里进行SSH连接,我想看看它到底在哪里.这可能吗?我可以从这里重新加入相同的终端窗口吗?
解决方法
正如@Sven所提到的,最好的选择是使用screen或tmux.这些工具称为“终端多路复用器”.它们允许您创建可以从实际登录中附加和取消附加的
shell会话.这些工具不仅可用于从其他终端检查您的工作,还具有其他功能,包括与其他用户共享会话,并确保在您断开Internet连接时您的命令不会停止.如果您正在搜索屏幕,可以尝试搜索“GNU Screen”.大多数
Linux系统都提供这两种工具.
通常,您将启动会话,然后在该会话内执行命令.但是,如果您已经启动了该命令,则可能需要查找有关将正在运行的命令移动到屏幕会话中的文章.不过,我不建议第一次尝试重要的事情.这个问题可能有一些用处:
Moving an already-running process to Screen
如果您只想查看进程是否正在运行,我最喜欢的工具就是strace.此工具允许您查看进程所做的每个内核调用.理解输出可能需要一些技巧,但它至少应该让你知道进程是否正在运行,如果你看得足够近,可能会捕获它正在打开的文件名.要做到这一点,首先,找到PID,可能通过搜索ps aux | grep yourcommand,然后:
strace -fp YOUR_PID
你可以^ C来摆脱它.它可能不允许您重新附加,但如果您只是想知道它在做什么,那就足够了.