2011-01-25 7 views
0

Я пытаюсь периодически получать количество открытых файлов через crontab, используя lsof | wc -l. Он всегда возвращает ноль. Это дает правильный результат, когда я запускаю его напрямую. Любая идея об этом странном поведении? Связана ли она с размером трубы, поскольку результат может быть довольно большим? Большое спасибо.Различные результаты при выполнении от Crontab

Kaka

+0

Как ваш кронтаб линия выглядеть? – eumiro

+0

Задача cron работает как тот же пользователь, которого вы пытаетесь «напрямую»? – trojanfoe

ответ

3

Основное отличие - переменные среды.

В этом случае это может быть ПУТЬ. lsof часто находится в или/usr/sbin, который может быть в вашем PATH, когда вы запускаете его интерактивно, а не в PATH при запуске cron.

попробуйте /usr/sbin/lsof|wc -l в вашем скрипте cron. И проверьте местную почту, так как там обычно отправляется вывод cron, могут быть соответствующие сообщения об ошибках.

Связано это с размером трубы в результате может быть довольно большим?

No.

+0

Это решило проблему, спасибо .. мой плохой, я не думал об этом :) – KaKa

Смежные вопросы