예상되는 사용자의 crontab에서 찾을 수없는 스크립트가 자동으로 실행되고 있으므로 모든 사용자의 crontab을 검색하고 싶습니다.
본질적 crontab -l
으로 모든 사용자 를 위해 실행하고 싶습니다 .
답변
스크립트에 따라 다르지만 crontab을 루트로 쉽게 찾을 수 있습니다.
crontab -l -u <user>
또는 모든 사용자의 파일이있는 스풀에서 crontab을 찾을 수 있습니다
cat /var/spool/cron/crontabs/<user>
각 줄의 시작 부분에 사용자 이름이 인쇄 된 모든 사용자의 crontab을 표시하려면 다음을 수행하십시오.
cd /var/spool/cron/crontabs/ && grep . *
답변
모든 사용자를 나열하고 모든 사용자에 대해 cron을 인쇄하는 하나의 라이너 :
for user in $(getent passwd | cut -f1 -d: ); do echo $user; crontab -u $user -l; done
이 솔루션 :
- 시스템 특정 crontab 경로를 알 필요가 없습니다 (예 :
/var/spool/cron/crontabs/
vs/var/spool/cron/
- 더 이상 존재하지 않아서 효과적으로 실행되지 않는 사용자를위한 “고아”크론, 즉 크론을 나열하지 않습니다.
답변
RHEL / OEL에서 모든 사용자가 작성한 cron 작업을 나열 할 수 있습니다.
#cd /var/spool/cron/
#ls -1
root
oracle
user1
루트의 크론 작업을 보려면
#cat root