2013-10-27 76 views
0

我最近遇到這個post,它說可以強制腳本在屏幕上運行shebang。我的問題是,如果我想重新連接到一個現有的屏幕會話(並因此強制腳本在屏幕下運行),我們如何做到這一點。在bash腳本的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想知道是否有在家當來指定要重新連接到我上面的屏幕的方式。

回答

0

對於Linux,我認爲我們應該只使用類似pid.sessionname的東西。

對於其他類Unix操作系統,它也可能表示這樣的TTY pid.tty.sessionname

可以肯定的,請諮詢您的屏幕的手冊頁:man screen

+0

我已經試過'pid.sessionname'。 Idoes不工作..它抱怨'必須連接到終端。「:( – AJW