Ah, minha namorada gosta muito quando eu lanço scripts php! Há algo especial neles, ela diz...
Assim, codifiquei este script para ser executado através da CLI (Command Line Interface) - para que ele seja executado localmente, não em um servidor web.
Ele inicia perfeitamente clicando com o botão direito> abrir> executar no terminal, mas fecha logo após a execução.**Existe uma maneira de manter a janela do terminal aberta?
É claro que posso iniciá-lo através de uma janela de terminal - que permaneceria aberta - mas estou procurando uma ação de um clique. Com scripts bash que eu uso, $SHELL
mas não funcionou (veja o código abaixo).
Até agora, a única coisa que descobri foi sleep(10);
que me dá 10 segundos para minha garota verificar o resultado. Prefiro fechar a janela do terminal manualmente.
#!/usr/bin/php -q
<?php
echo "Hello World \n";
# wait before closing terminal window
sleep(10);
# the following line doesn't work
$SHELL;
?>
(PHP 5.4.6-1ubuntu1.2 (cli) (construído: 11 de março de 2013 14:57:54) Copyright (c) 1997-2012 The PHP Group Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies )
Responder1
ComoSalémdisse emeste comentário,você está misturando código bash e php. Você pode usarshell_execfunção php para evitar isso:
#!/usr/bin/php -q
<?php
echo "Hello World \n";
# prevent to close terminal using php
shell_exec('$SHELL');
?>
cordashell_exec( corda$ cmd)— Execute o comando via shell e retorne a saída completa como uma string.