Вероятно, это из-за $PATH
. Сделайте это в своей оболочке за пределамиcrontab
:
command -v searchd | xargs dirname
Эта команда вернет каталог, где searchd
находится в вашей системе, или ошибку, если у вас нет searchd
в вашем $PATH
даже в интерактивной оболочке. Теперь сделайте это в верхней части вашего скрипта, который вы выполняете вcrontab
:
PATH=:$PATH
В качестве альтернативы просто используйте полный путь к searchd
вместо which searchd
.
Также прочитайте это на which
, если хотите полностью понять, как это работает.:Почему бы не использовать «который»? Что тогда использовать? .