screen -list
There are screens on:
        4278.chat       (07/16/15 14:26:47)     (Detached)
        15127.notifier  (07/16/15 13:27:57)     (Detached)

Моя цель состоит в том, чтобы:

  • Если экран чата не запущен, запустите его, в противном случае закройте его.
  • выполнить команду в сеансе чата (например: node chat.js)
  • отключить сеанс чата

1 ответ1

1

Ответ из нескольких частей:

  • Если экран чата не запущен, запустите его, в противном случае закройте его.
screen -S chat -X quit || screen -S chat

Может также detach а не убивать сеанс экрана, если вы это имели в виду.

  • выполнить команду в сеансе чата (например: узел chat.js)

Если вы хотите запустить новый экран и выполнить команду, то

screen -dm -S chat && screen -S chat -X stuff 'command-to-execute-in-screen-subshell
'

Обратите внимание на встроенную новую строку внутри кавычек. Если экран уже запущен, вы можете пропустить первую половину.

  • отключить сеанс чата
screen -S chat -X detach

см. также ответ на первый вопрос.

Все это обоснованно задокументировано в руководстве.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .