在 bash 脚本的 shebang 中使用屏幕会话



我最近遇到了这篇文章,它说可以使用shebang强制脚本在屏幕上运行。我的问题是,如果我想重新连接到现有的屏幕会话(从而强制脚本在屏幕下运行),该怎么做。

所以,在我的服务器上,当我做screen -list时,我看到:

There is a screen on:
    22566.myscreen  (10/26/13 23:47:09) (Detached)
1 Socket in /var/run/screen/S-admin.

现在,我有以下 bash 脚本,我希望 bash 脚本与上面的屏幕会话一起运行。目前,我有这样的东西:

#!/usr/bin/screen -r "myscreen" /bin/bash
# /home/foo/jobscripts/script.sh
#
echo $STY
git status
touch /home/foo/jobscripts/testsuccess.txt
exit 0

。但这显然不起作用,并告诉我Error: Unknown option r "myscreen" /bin/bash想知道是否有办法在 shebang 中指定以重新附加到我的上述屏幕。

对于 Linux,我认为我们应该使用类似 pid.sessionname 的东西。

对于其他类Unix操作系统,也可能像这样指示TTY pid.tty.sessionname

可以肯定的是,请查阅屏幕手册页:man screen

最新更新