Como eu mato uma tela se eu sei o nome dela?


14

Eu tenho uma tela chamada 'foo' que comecei a usar o comando

screen -S foo -d -m  my_command_goes_here.

Quero colocar isso no cron e reiniciá-lo todas as noites matando a tela. A razão pela qual estou usando uma tela é que meu comando inicia vários outros procs e isso garantirá que todos saiam.

Então ... qual é o comando para matar sceen 'foo'?

Obrigado!


1
Quais comandos você está executando e precisa da tela para que eles saiam corretamente?
— Darren Hall

Respostas:


14

screen -S foo -X quit

Na página do manual:

-X  Send the specified command to a running screen session.
...
quit    Kill all windows and terminate screen.

2

Tente usar isto:

tela -S foo -X kill

Eu seria cauteloso, dependendo do que você está executando e do estado em que está, isso pode não matar os processos em execução na tela e talvez causar instabilidade no sistema de arquivos se houver arquivos abertos (não sei ao certo estou apenas assumindo)


infelizmente isso não funcionou.
— Poul

trabalhou para mim, estava no ubuntu. Mas eu só tinha uma janela aberta na tela. Deveria ter feito mais testes.
— Roy Rico

2
O único motivo pelo qual não consigo ver esse trabalho é se você tiver mais de uma sessão de tela nomeada foo, use screen -listpara obter uma lista das sessões em execução atuais.
— Darren Hall
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.