0

我想在 Linux 环境中从 PHP shell_script 执行以下命令。

shell_exec('at 12:39 <<< "mkdir newfolder"');

我已尝试使用 PHP 的所有方法来执行此脚本,但它不起作用。在我运行的终端中,at 12:39 <<< "mkdir newfolder"它正在执行并且任务正在调度。但是当我尝试使用 shell_exec 在 php 中运行相同的脚本时,它不起作用。

您可以在键入时理解问题,at 12:39它将显示您输入并按 Ctrl+d 完成执行。在这里我使用单行<<<

谁能建议我如何从 PHP 执行这个脚本?

4

1 回答 1

2

shell_exec 默认使用 dash shell 系统:确保运行php -r 'echo shell_exec("echo $0");'并输出 'sh' ,并且 Dash 没有 <<< 重定向操作符。

相反,您可以强制使用 Bash 并执行以下操作:

shell_exec('/bin/bash -c \'at 12:39 <<< "mkdir newfolder"\'');

希望这会有所帮助。

于 2016-08-31T12:27:32.290 回答