-
카테고리
-
세부 분야
시스템
-
해결 여부
미해결
crontab 질문이 있습니다.
22.04.05 09:18 작성 조회수 111
1
export DATE=$(date -d "-1 days " "+%Y%m%d") export C0=CF02_$DATE export C1=$(echo $C0 |awk {'print substr ($0,1,11)'};) cat /root/mo/$C1*.dat >> /root/mo/$C1.dat tar -cvf /root/mo/$C1.tar /root/mo/$C1.dat
위 쉘 스크립트를 아래와 같이 crontab으로 돌리려 하는데 잘 안되네요;; 제가 뭘 놓치고 있을까요?
[root@RHEL8 mo]# crontab -l 5 0 1 * * root/mo/test.sh >> error.log
에러 로그는 제가 뭐가 찍히나 보려고 걸어 놨는데 전혀 찍히는게 없네요..
매 월 1일 0시 5분에 돌리려 하는데 도움 좀 부탁드립니다 감사합니다.
답변을 작성해보세요.
0
홍영기
지식공유자2022.04.06
gorogong님!
아래와 같이 테스트해 보았습니다. 잘 작동합니다 ^^
파일명: test.sh
set -x
export DATE=$(date -d "-1 days " "+%Y%m%d")
export C0=CF02_$DATE
export C1=$(echo $C0 |awk {'print substr ($0,1,11)'};)
cat /home/debian/Desktop/$C1*.dat >>/home/debian/Desktop/$C1.dat
tar -cvf /home/debian/Desktop/$C1.tar /home/debian/Desktop/$C1.dat
테스트 방법( 매시간 30분에 실행 )
debian@debian:~/Desktop$ crontab -e
30 * * * * /home/debian/Desktop/test.sh >> /home/debian/Desktop/error.log
debian@debian:~/Desktop$ ls
CF02_202204.dat CF02_202204.tar error.log test.sh
debian@debian:~/Desktop$
0
홍영기
지식공유자2022.04.05
gorogong님~ 안녕하세요:)
# 슬래시를 빼먹으셨네요. 그리고 error.log 의 완전한 경로를 주는 것이 좋을 듯 합니다.
5 0 1 * * /root/mo/test.sh >> /root/mo/error.log
# 이런 식으로 실행 속성을 부여해 주셨나요
chmod +x /root/mo/test.sh
답변 2