我有一堆服务器,我在上面用屏幕运行实验。操作步骤如下:
ssh到服务器XXX 启动屏幕 在几个标签开始实验 分离的屏幕 从服务器断开连接
当实验正在运行时,我可以通过对所有服务器进行sshing并列出我正在运行的进程(使用top或ps)来轻松地找到它们在哪些服务器上。
然而,一旦实验完成,我如何才能找到在哪些服务器上打开了屏幕会话(以便我可以查看输出,重新启动它们,等等)?
PS:我的实验也把它们的输出打印到文件中…但这不是我问题的重点。
我有一堆服务器,我在上面用屏幕运行实验。操作步骤如下:
ssh到服务器XXX 启动屏幕 在几个标签开始实验 分离的屏幕 从服务器断开连接
当实验正在运行时,我可以通过对所有服务器进行sshing并列出我正在运行的进程(使用top或ps)来轻松地找到它们在哪些服务器上。
然而,一旦实验完成,我如何才能找到在哪些服务器上打开了屏幕会话(以便我可以查看输出,重新启动它们,等等)?
PS:我的实验也把它们的输出打印到文件中…但这不是我问题的重点。
当前回答
以该用户身份运行以下命令,列出该用户的所有屏幕会话:
screen -ls
要查看特定机器上的所有屏幕会话,您可以这样做:
ls -laR /var/run/screen/
我在我的电脑上看到:
gentle ~ # ls -laR /var/run/screen/
/var/run/screen/:
total 1
drwxrwxr-x 4 root utmp 96 Mar 1 2005 .
drwxr-xr-x 10 root root 840 Feb 1 03:10 ..
drwx------ 2 josh users 88 Jan 13 11:33 S-josh
drwx------ 2 root root 48 Feb 11 10:50 S-root
/var/run/screen/S-josh:
total 0
drwx------ 2 josh users 88 Jan 13 11:33 .
drwxrwxr-x 4 root utmp 96 Mar 1 2005 ..
prwx------ 1 josh users 0 Feb 11 10:41 12931.pts-0.gentle
/var/run/screen/S-root:
total 0
drwx------ 2 root root 48 Feb 11 10:50 .
drwxrwxr-x 4 root utmp 96 Mar 1 2005 ..
这是一个相当出色的Unix使用,将Unix Sockets包装在文件系统权限中,以处理安全性、状态和流。
其他回答
所以你是在用屏幕让实验在后台运行,还是什么?如果是这样,为什么不直接在后台启动呢?
./experiment &
如果你问如何通知我所做的工作,如何将实验与邮件命令连接在一起?
./experiment && echo "the deed is done" | mail youruser@yourlocalworkstation -s "job on server $HOSTNAME is done"
以该用户身份运行以下命令,列出该用户的所有屏幕会话:
screen -ls
要查看特定机器上的所有屏幕会话,您可以这样做:
ls -laR /var/run/screen/
我在我的电脑上看到:
gentle ~ # ls -laR /var/run/screen/
/var/run/screen/:
total 1
drwxrwxr-x 4 root utmp 96 Mar 1 2005 .
drwxr-xr-x 10 root root 840 Feb 1 03:10 ..
drwx------ 2 josh users 88 Jan 13 11:33 S-josh
drwx------ 2 root root 48 Feb 11 10:50 S-root
/var/run/screen/S-josh:
total 0
drwx------ 2 josh users 88 Jan 13 11:33 .
drwxrwxr-x 4 root utmp 96 Mar 1 2005 ..
prwx------ 1 josh users 0 Feb 11 10:41 12931.pts-0.gentle
/var/run/screen/S-root:
total 0
drwx------ 2 root root 48 Feb 11 10:50 .
drwxrwxr-x 4 root utmp 96 Mar 1 2005 ..
这是一个相当出色的Unix使用,将Unix Sockets包装在文件系统权限中,以处理安全性、状态和流。
很多人已经指出了这一点
$ screen -ls
会列出屏幕会话。
这是另一个可能对你有用的技巧。
如果您在.bashrc . xml文件的最后一行添加以下命令 文件,然后它将自动重新连接到您的 登录时屏幕会话。
screen -d -r
希望对你有用。
您可以使用以下命令。
screen -list
(or)
screen -R
ps x | grep屏幕
如果您使用了该命令,可以查看该屏幕正在运行什么
screen -A -m -d php