2011-01-25 3 views
0

lsof | wc -l을 사용하여 crontab을 통해 주기적으로 열린 파일의 수를 얻으려고합니다. 항상 0을 반환합니다. 직접 실행했을 때 정확한 결과를 제공합니다. 이상한 동작에 대해서는 어떤 생각이 드나요? 결과가 상당히 클 수 있으므로 파이프 크기와 관련이 있습니까? 고마워요.다른 결과가 Crontab에서 실행되었을 때

카카도

+0

어떻게 crontab을 선 모습입니까? – eumiro

+0

cron 작업이 '직접'시도한 동일한 사용자로 실행되고 있습니까? – trojanfoe

답변

3

가장 큰 차이점은 환경 변수입니다.

이 경우 PATH 일 수 있습니다. lsof는 종종/usr/sbin에 있으며, cron에서 실행할 때 PATH에는없는 동안 상호 작용 방식으로 실행하면 PATH에있을 수 있습니다.

당신의 cron 스크립트에 /usr/sbin/lsof|wc -l 시도해보십시오. 로컬 메일을 확인하십시오. cron 출력이 정상적으로 전송되기 때문에 관련 오류 메시지가있을 수 있습니다.

결과가 상당히 클 수 있으므로 파이프 크기와 관련이 있습니까?

번호

+0

그게 문제를 해결, 고마워 .. 내 나쁜, 나는 그것을 생각하지 못했습니다 :) – KaKa

관련 문제