我的 Linux 服务器上运行着大约 15 个 screen 实例。它们是我需要监视的每个正在运行的进程。我必须关闭终端(这就是我启动屏幕的原因)。
有没有办法在不同的选项卡中重新打开所有 15 个 Screen 实例,而无需打开新选项卡、登录服务器、打印所有可用屏幕以恢复,然后为每个屏幕会话键入 id?
答案1
这个 python 脚本正好帮我完成了这项工作。我创建了三个屏幕会话,这会启动三个 xterm,并在每个会话中重新附加会话。它有点难看,但它有效。
#! /usr/bin/env python
import os
if __name__ == '__main__':
tempfile = '//tmp//screenList'
# capture allthescreenIds
os.system('screen -ls | grep Det | cut -d . -f 1 > ' + tempfile)
f = open(tempfile, 'r')
screenIds = f.readlines()
f.close()
screenIds = [x.lstrip() for x in screenIds]
for eachId in screenIds:
cmdLine = 'xterm -e screen -r ' + eachId.strip() + ' &'
os.system(cmdLine)