Я пытаюсь получить некоторые команды, выполненные на удаленном устройстве. Я использую открытый и закрытый ключ для подключения к удаленному устройству.выполнить сценарий оболочки с php
На моем сервере у меня есть только что ввести: ssh username @ remote_device command, и я получаю его результат. Поэтому я хочу сделать это на php-странице.
Я пробовал разные методы, и это не сработало для меня.
1 -
$cmdline = escapeshellcmd("ssh [email protected]_device command");
system($cmdline);
2 - выполнение скрипт на сервере
script.sh:
#!/bin/bash
output=$(ssh [email protected]_device command)
echo "$output" >> test.txt
exit 0
PHP код:
passthru('./script.sh',$result);
echo $result ;
я получил результат отправки по моему сценарию, но n ot результат команды ssh в нем. Когда я выполняю скрипт напрямую, у меня есть результат.
3-
system ("ssh [email protected]_device command > test.txt");
system ("ssh -i /home/nagios/.ssh/id_rsa -o 'StrictHostKeyChecking no' [email protected]_device command' > test.txt");
текстовый файл остается пустым
Что i'am делать неправильно?
я получил тот же пустой результат :( – ayoubitou