Мне нужно из PHP выполнять на удаленном сервере команду, и получать её вывод.
Если я в командной строке выполню
psexec -accepteula \\10.1.5.1 hostname
,
то получаю ответ:
psexec -accepteula \\10.1.5.1 hostname
PsExec v2.4 - Execute processes remotely
Copyright (C) 2001-2022 Mark Russinovich
Sysinternals - www.sysinternals.com
aspdd-tfl01
hostname exited on 10.1.5.1 with error code 0.
Но из PHP:
$exp=shell_exec("psexec -accepteula \\10.1.5.1 hostname");
echo $exp;
в выводе пусто.
Как можно получить вывод psexec в PHP (Windows).
UPD:
psexec -accepteula \\\\10.1.5.1 hostname 2>&1
даёт нужный результат, осталось авторизоваться. Ибо:
psexec -accepteula -u Администратор -p ********* \\10.1.5.1 hostname
PsExec v2.4 - Execute processes remotely
Copyright (C) 2001-2022 Mark Russinovich
Sysinternals - www.sysinternals.com
PsExec could not start hostname on 10.1.5.1:
Вход в систему не произведен: выбранный режим входа для данного пользователя на этом компьютере не предусмотрен.