从找不到cronjob命令运行的bash脚本

use*_*196 2 shell cron

我的crontab如下:

SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
01 04 * * * root /home/sphinx_scripts/daily_update_index.sh

daily_update_index.sh如下:

indexer  --rotate xxx

现在,如果我从任何地方(作为root)运行/home/sphinx_scripts/daily_update_index.sh,它运行正常.但我每天都会收到来自cron job的电子邮件,说"找不到命令索引器".索引器的完整路径是/ usr/loca/bin/indexer.为什么我会收到这样的错误?

use*_*019 6

问题是索引器不在路径上.你说它是/ usr/loca/bin/indexer amd PATH=/sbin:/bin:/usr/sbin:/usr/bin
为了解决这个问题,我将把整个路径放在daily_update_index.sh中的索引器中,或者将/ usr/local/bin添加到daily_update_index.sh中的路径