如果我执行以下命令,我会得到一个'嘿'输出:
echo shell_exec("echo 'hey'");
但如果我执行以下命令,它将不会杀死任何screen
:
echo shell_exec("killall screen");
或者如果我这样做
echo shell_exec("sh /var/www/html/run.sh");
它根本不会运行该文件 (该文件也会杀死屏幕)
如果我甚至用get内容获取该文件,它会成功读取其中的内容。
如果它可以执行echo
那么错了吗?
答案 0 :(得分:0)
要运行如此强大的命令,我必须使用this library中所述的this question。这允许我以root访问权限登录SSH并执行任何命令!
function ssh_script($script, $ip, $user, $pass) {
$ssh = new Net_SSH2($ip);
if (!$ssh->login($user, $pass)) {
exit('Login Failed');
}
if ($ssh !== false) {
echo $ssh->exec("sh " . $script);
}
else {
echo "fail";
}
}