Passando chave de retorno via script de shell

2

Estou usando phpseclib para executar um script de shell no meu servidor em um determinado intervalo. Esse script envolve o uso de nohup . Por qualquer motivo, se não houver um usuário pronto para enviar o SIGINT ou um retorno para nohup depois de iniciado, ele mata o processo.

Por exemplo, se eu executar o script por meio de um prompt local, ele será executado, então tudo que eu preciso fazer é pressionar enter e eu recebo um novo prompt cmd. Quando tento executá-lo de maneira automática, não consigo passar o retorno ou um SIGINT e o processo nunca termina. Idéias?

    
por Peter Kazazes 03.11.2012 / 06:39

1 resposta

0

Normalmente eu usei uma estrutura feia de TCL / Tk chamada Espero fazer esse tipo de coisa no passado. Eu notei que há uma versão do PHP de esperar chamado PHP: Expect . Talvez isso ajude aqui?

O Expect deve permitir que você simule uma conexão do console e envie qualquer key squence. Esteja avisado que essas estruturas podem ser dolorosas. Se você não está preso ao PHP, dê uma olhada em Ashier que parece incrível (embora eu nunca tenha usado) .

    
por 13.11.2012 / 16:02