我已经在 shell_exec PHP 函数和 linux 命令上苦苦挣扎了 2 天。 简而言之,这是可行的:
shell_exec('/usr/bin/at 09:32 <<EOF
touch /var/www/website/hello.txt
EOF'
);
这不是:
shell_exec('/usr/bin/at 09:32 <<EOF
wget -O - -q -t 1 "http://192.168.56.101/website/test.php?param=hello" >/dev/null 2>&1
EOF'
);
为什么?
(注意:上面的代码可以在控制台中运行)
提前致谢。
最佳答案
好吧,我终于明白了!!
对于那些感兴趣的人来说,pb 指出 wget 命令也需要使用完整路径(即:/usr/bin/wget)来调用。 误导我的是触摸命令不需要它。这很奇怪,但无论如何,这是工作代码:
shell_exec('/usr/bin/at 09:32 <<EOF
/usr/bin/wget -O - -q -t 1 "http://192.168.56.101/website/test.php?param=hello" >/dev/null 2>&1
EOF'
);
关于php - 将 wget 与 shell_exec 和 at 命令一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25590095/