PHP shell_exec($cmd) 不会在 cronjob 中运行



对不起那个(我相信)糟糕的问题,但谷歌和这个论坛中的其他文章无法帮助我......

我将运行包含以下代码的 php 脚本:

    $cmd="duck  -u user_name -p pwd -parallel 1 -e overwrite -y --throttle 1024 --upload path to remote file absolute_path_to_local_file";
    $shellResponse=shell_exec($cmd);

当我在浏览器中调用这个 php 文件时,这很好用。但是当我在 cronjob 中调用脚本时,它会失败。

使用cronjob,我收到以下错误消息:

sh:1: duck not found

我相信这可能是一个权限问题,但我是这方面的新手,不知道我可以在哪里设置权限以及我必须做什么。

有人可以帮我吗?!

Cron 作业不会获得通常可用的正常 PATH env 变量。

尝试改用"duck"命令的绝对路径。

例:

$cmd = "/usr/bin/duck ..."

要查找绝对路径,您可以键入

which duck

在正常的命令提示符下

最新更新