Centos iniciam script para 'screen'?

1

Eu tenho um programa que é executado em primeiro plano, então eu o executo através de uma 'tela'. Existe um bom modelo de iniciar / parar / reiniciar para 'screen'? Eu preciso passar os comandos para a tela e criá-lo se não existir.

    
por Will 13.10.2010 / 01:41

2 respostas

1

Acho que você está um pouco confuso.

Todas as telas permitem que você o desconecte do terminal atual e reconecte em uma data posterior.

Você pode, no entanto, iniciar um processo na tela, separado.

screen -d -m your_command_here

    
por 13.10.2010 / 01:43
0

Não tenho certeza do que você quer dizer com "modelo para tela", mas a opção -R significa "conecte-me a uma tela existente ou inicie uma nova". Para ser útil, você desejará algo como screen -d -R -S myscreen . A opção -d irá desanexá-lo se ele já estiver anexado em outro lugar, e "-S myscreen" nomeará sua sessão de tela para que os futuros comandos screen -d -R -S myscreen saibam de qual tela você está falando.

Infelizmente, -d -R -S não pode ser usado com -d -m, então você não pode dizer "iniciar uma tela chamada myscreen no modo desanexado, a menos que já exista uma tela chamada myscreen". Uma vez iniciado, você terá que usar o comando ctrl-a ctrl-d para desanexá-lo se não quiser que ele seja executado em primeiro plano.

Qualquer coisa depois que as opções serão executadas como um comando em uma nova tela apenas, então você pode executar screen -d -R -S myscreen /some/program para:
1) Se existir uma tela chamada myscreen, desconecte-a de onde estiver e reconecte-a aqui. 2) Se a tela não existir, crie-a e execute /some/program nela.

Observe que, se você executar um comando na tela, quando esse comando sair, a tela será exibida.

    
por 13.10.2010 / 06:49