screen -list
There are screens on:
4278.chat (07/16/15 14:26:47) (Detached)
15127.notifier (07/16/15 13:27:57) (Detached)
Meu objetivo é:
- Se a tela de bate-papo não for iniciada, inicie-a; caso contrário, feche-a.
- execute um comando na sessão de chat (ex
node chat.js
:) - separar sessão de chat
Responder1
Resposta em várias partes:
- Se a tela de bate-papo não for iniciada, inicie-a; caso contrário, feche-a.
screen -S chat -X quit || screen -S chat
Também poderia, detach
em vez de encerrar a sessão da tela, se foi isso que você quis dizer.
- execute um comando na sessão de chat (ex: node chat.js)
Se você pretende iniciar uma nova tela e executar um comando, então
screen -dm -S chat && screen -S chat -X stuff 'command-to-execute-in-screen-subshell
'
Observe a nova linha incorporada entre aspas. Se a tela já estiver em execução, você pode deixar a primeira metade.
- separar sessão de chat
screen -S chat -X detach
veja também a resposta à primeira pergunta.
Tudo isso está razoavelmente documentado no manual.