Задавался вопросом, как я могу запустить команду, такую как:
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;"
]
[]Explanation:[
] []-d -m[
] запускает экран в отдельном режиме (создайте сеанс, но не прикрепляйте к нему)[]sh -c командная строка [
] запускает оболочку, которая выполняет данную командную строку (необходимо, так как вы используете [] при [
] сборке).[] С экрана -h []-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[
] может быть для выполнения команды экрана []-H[], а не команды оболочки []-H[]. Возможно, Вы сможете просто поставить свою команду после команды []-dmS <имя>[
] без переключателя []-X[
].[