【发布时间】:2018-01-22 18:19:01
【问题描述】:
我正在尝试使用 PHP 覆盖远程服务器中的 .txt file。我使用的 Linux 命令在 bash 脚本中运行良好。但是shell_exec() 就不行了。
命令如下:
$number = $_GET["phone"];
$out = shell_exec("echo $number | ssh root@0.0.0.0 '"cat > /path/to/file/number.txt"'");
echo $out;
请注意,两台服务器之间的密钥已经共享。因此 ssh 命令无需输入密码即可工作。
【问题讨论】:
-
在单引号中尝试双引号:
shell_exec('echo ..."cat..."') -
这段代码真的运行了吗?请包括它产生的任何错误或输出。
-
这适用于简单的shell命令,如
shell_exec(pwd);但对于上述命令,它不起作用并且没有显示任何错误。