终止屏幕会话并启动一个新的 cron

终止屏幕会话并启动一个新的 cron

我有一个屏幕会话,其中运行着几个窗口,这些窗口正在运行几个在终端窗口中运行控制台的应用程序(这就是为什么我在屏幕上运行它们)。

我想关闭所有窗口,然后添加两个新窗口,本质上只是重新运行命令来重新启动该程序。

因为这可能有点令人困惑,所以如果我只是尝试在命令行上手动执行此操作,我会这样做:

$ screen -x programs

$ (Hit Control-a + \ )

$ (Hit Control-a + c)

$ program1 args0 args1 #running first program again

$ (Hit Control-a + c)

$ program2 args0 args1 #running second program

从技术上讲,我甚至不需要关闭现有窗口,只需停止正在运行的交互式窗口即可。通常,我在窗口中按 CTRL-D 即可执行此操作,程序就会停止运行。然后我只需再次运行该程序即可。

我知道有一些命令可以让我通过名称附加到现有的屏幕会话,但我只是不知道如何使用它来发送相当于 CTRL+D 的命令,然后向其发送另一个命令。

答案1

尝试此操作来退出您的屏幕会话。

screen -dr your_session_name -X quit

笔记:

不同的 Linux/Unix 系统对长时间运行的进程有不同的处理方式。如果您的系统使用 控制进程systemd,并且其版本高于230,请尝试阅读 systemd 的最新手册。

相关内容