php shell_exec($cmd) 不要在 cronjob 中 运行

php shell_exec($cmd) do not run in a cronjob

抱歉这个(我认为)糟糕的问题,但是 google 和这个论坛中的其他文章不能帮助我...

我将 运行 一个包含以下代码的 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 环境变量。

尝试使用 'duck' 命令的绝对路径。

示例:

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

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

which duck

在普通命令提示符下