2012-06-28 2 views
-1

나는 많은 로그를 가지고 있으며 매주 토요일에 압축해야합니다. 매주 토요일입니다. 나는 그 일을하기 위해 한 일을했지만, 이미 압축 된 파일을 다시 압축하고 싶지는 않습니다. 예를 들어 : 주 1의 토요일에서Cron : 이전 로그 파일을 다시 압축하지 않고 해당주의 로그 파일을 압축합니다. Oneliner

ls myDir/ 
test1 test2 test3 

내가 가진 것

ls myDir/ 
test1.bz2 test2.bz2 test3.bz2 

에 주 2, 내가 가진 것 :

ls myDir/ 
test1.bz2 test2.bz2 test3.bz2 newTest1 newTest2 

을 주 2 토요일에 I 을 갖고 싶어합니다 :

압축 된 파일 만 은 이미 압축 파일

이 내의 crontab oneliner입니다 다시 압축하지 : 63,210

ls myDir/ 
test1.bz2 test2.bz2 test3.bz2 newTest1.bz2 newTest2.bz2 

이다

0 2 * * 6 find /myDir -name "log*" -ctime +7 -exec bzip2 -zv {} \; 
This is: 
    Find all the log files, 7 days of older and compress them. 
    (could be obvious! but I'm a newbie) 

이 파일 만 압축을. 그러나 검증 방법 또는 내가 말하는 상황을 피하는 방법을 모른다. 명령을 다시 실행하려고하면 압축 된 파일이 영향을받지 않는 것 같지만 항상 유지 될지 확실하지 않습니다. 회사의 프로덕션 서버를 망치고 싶지 않습니다. 다음 명령을

답변

3

시도 :

find /myDir -name 'log*' -and -not -name '*.bz2' -ctime +7 -exec bzip2 -zv {} \; 
+0

좋아요. 고맙습니다! 미니 질문 : 내가 추가 검증을하지 않으면 재 압축의 측면에서 문제가 발생할 것입니다.이 경우 나에게 일어난 일이 아니기 때문에 제가 묻고있는 것입니다. – Kani

관련 문제