多个已断开连接的窗口的脚本屏幕



我已经梳理了尽可能多的gnu-screen和bash标签,但我找不到答案,所以如果我错过了一个明显的答案,请原谅我。

作为 bash 脚本的一部分,我需要创建一个已解除附加的屏幕会话,并让它在该会话的新创建的窗口 1 中运行一个命令,然后在新创建的窗口 2 中运行另一个命令,所有这些都是同一会话的一部分。到目前为止,我已成功创建取消附加的会话,为其命名,并使我的python脚本在窗口1中运行。问题是它永远不会打开第二个窗口。我错过了什么?

screen -d -m -S jsession
screen -S jsession -p 0 -X exec /script/pyscript.py
screen -S jsession -p 1 -X exec asterisk -rvvvvvvvvvv

您需要先创建第二个窗口,然后才能向其发送命令。第一个窗口是在会话启动时创建的,这就是第一个exec工作的原因。对于另一个窗口,只需将exec替换为 screen ,即可启动新窗口。

screen -d -m -S jsession
screen -S jsession -p 0 -X exec /script/pyscript.py
# No need to specify a window with -p; the new one will be numbered
# automatically
screen -S jsession -X screen asterisk -rvvvvvvvvvv

最新更新