7일마다 모든 이전 로그를 tar.gz하고 다음에 실행될 때 tar 파일을 제외할 수 있도록 스크립트를 생성하려고 합니다.
스크립트가 괜찮은가요? 아니면 변경해야 하나요?
find /home/bankex/bankex/glassfish/domains/bankex/logs/ -mtime -7 -print0 | xargs tar -czvf /home/bankex/bankex/glassfish/domains/bankex/logs/oldlogs_$(date +"%Y%m%d").tar.gz --exclude=/home/bankex/bankex/glassfish/domains/bankex/logs/*.tar.gz --null
find /home/bankex/bankex/glassfish/domains/bankex/logs/server.log* -mtime -7 -delete
답변1
이 시도,
find /home/bankex/bankex/glassfish/domains/bankex/logs/ -maxdepth 1 -mtime -7 -type f ! -name "*.tar.gz" | xargs tar -czvf /home/bankex/bankex/glassfish/domains/bankex/logs/oldlogs_$(date +"%Y%m%d").tar.gz --remove-files
maxdepth
디렉토리 수준type f
파일만! -name
패턴이 있는 파일 제외.tar.gz
--remove-files
Tared 파일이 삭제됩니다