启动屏幕(unix命令)+在1命令中运行命令?

时间:2010-01-05 16:18:26

标签: unix command-line gnu-screen

想知道如何启动命令,例如:

while :; do ./myCommand; done;

但不是做通常的

screen -S nameOfMyScreen

然后是命令

while :; do ./myCommand; done;

然后分离屏幕

^a ^d (Control "a" the control "d"

我希望它能够开始和分离。谢谢!

2 个答案:

答案 0 :(得分:10)

screen -d -m sh -c "while :; do ./myCommand; done;"

说明:

  • -d -m以分离模式启动屏幕(创建会话但不附加到它)
  • sh -c commandline启动一个执行给定命令行的shell(必要的,因为你使用的是while内置函数。)

答案 1 :(得分:3)

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开关可能是执行 screen 命令而不是 shell 命令。您可能只能在-dmS <name>之后执行命令而无需-X切换。