想知道我怎麼可以啓動一個命令,例如:啓動屏幕(unix命令)+在1條命令中運行命令?
while :; do ./myCommand; done;
但是在做平常
screen -S nameOfMyScreen
然後命令
while :; do ./myCommand; done;
然後取下屏幕
^a ^d (Control "a" the control "d"
我希望它開始和分離。謝謝!
想知道我怎麼可以啓動一個命令,例如:啓動屏幕(unix命令)+在1條命令中運行命令?
while :; do ./myCommand; done;
但是在做平常
screen -S nameOfMyScreen
然後命令
while :; do ./myCommand; done;
然後取下屏幕
^a ^d (Control "a" the control "d"
我希望它開始和分離。謝謝!
screen -d -m sh -c "while :; do ./myCommand; done;"
說明:
-d -m
開始屏幕分離模式(建立會話,但不重視它)sh -c commandline
開始其執行給定的命令行(需要一個殼,因爲你正在使用內建的while
)。從screen -h
,這些看起來有用:
-dmS name Start as daemon: Screen session in detached mode.
-X Execute <cmd> as a screen command in the specified session.
我沒有這樣做我自己,但是這就是我會開始。
更新:
的幫忙頂還說
Use: path/to/screen [-opts] [cmd [args]]
所以-X
開關可用於執行屏幕命令,而不是一個外殼命令。您可能只需將命令放在-dmS <name>
之後,不需要任何-X
切換。
+1。這些將組合你的工作。既然你的*命令*是一個腳本,你可能必須把它放在一個文件中並傳遞它,或者使用'bash -c'或類似的東西。 – 2010-01-05 16:33:36
我係統上的屏幕版本表示-c選項是讀取備用配置文件而不是.screenrc。 – MikeSep 2010-01-05 16:39:34
'-c'不會傳遞給屏幕,而是傳遞給'sh'。在屏幕命令行解析器讀取「sh」(即沒有劃線的東西)之後,它知道沒有更多的選項可用,其他所有內容都是應該執行的命令。 – Heinzi 2010-01-05 16:40:42
啊,我糾正了。 :) – MikeSep 2010-01-05 20:53:56