用于查找当前屏幕会话的内置命令是screen -ls
要在 python 中获得相同的功能:
from subprocess import check_output
def screen_present(name):
var = check_output(["screen -ls; true"],shell=True)
if "."+name+"\t(" in var:
print name+" is running"
else:
print name+" is not running"
screen_present("server1")
Run Code Online (Sandbox Code Playgroud)
对代码的几点评论:
; trueandshell=True因为 screen 返回退出代码1,这与该函数不能很好地配合check_output。"."+和+\t(来确保我们匹配屏幕名称而不是打印输出的其他部分。