Posso executar comandos shell no Ubuntu a partir do PHP e automatizar o que estou fazendo manualmente agora?
Você pode executar comandos do shell a partir de PHP
usando a função shell_exec()
ou usando o operador ' '
(backtick): se você estiver executando PHP
& lt; 5.4.0, primeiro certifique-se de desativar modo de segurança e, em seguida, em PHP
script você pode usar qualquer uma dessas sintaxes:
-
$return = shell_exec('<shell_command>');
-
$return = '<shell_command>';
A menos que você queira capturar valores de retorno de comandos únicos, a maneira mais direta de fazer o que você está pedindo seria condensar tudo o que você está fazendo manualmente no shell em um bash
independente (ou o que for ) script a ser chamado uma vez usando qualquer um desses métodos. Por exemplo, a sintaxe de um script bash
seria:
-
$return = shell_exec('bash script.sh');
-
$return = 'bash script.sh';
Para passar parâmetros para o script (por exemplo, o valor de uma variável $username
):
-
$return = shell_exec("bash script.sh '$username'");
-
$return = 'bash script.sh '$username'';
Para recuperar os parâmetros transmitidos no script bash
(por exemplo, o valor de uma variável $username
passada com o método acima):
#!/bin/bash
# ...
username=
# ...
Ou simplesmente faça referência a quando necessário, por exemplo:
#!/bin/bash
# ...
echo ""
# ...