
Я пытаюсь создать скрипт, который мог бы заархивировать в tar.gz все предыдущие журналы за 7 дней и исключить файл 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
удалит файлы, которые тарированы