Preciso obter informações básicas sobre o sistema operacional em PHP:
$p = shell_exec('cat /etc/*-release 2>&1');
Isso retorna:
cat: '/etc/*-release': No such file or directory
O comando funciona bem no terminal/CLI via PuTTY.
Minha melhor interpretação atual é que o PHP requer que um caminho seja definido. Então eu tentei isso:
$p = shell_exec('echo $PATH');
O que retorna:
/bin:/usr/bin
Quando executo echo $PATH
diretamente no terminal, recebo uma :
lista delimitada. Então peguei tudo isso e coloquei no arquivo PHP diretamente da seguinte forma:
putenv('/etc');
//plus others
Ainda sem resultado. Eu sei que shell_exec()
funciona bem com outros comandos shell_exec('whoami');
. No terminal/CLI estou logado exatamente como o mesmo usuário do PHP 8.3.
O que mais estou perdendo?