Skript „7 Tage tar-Protokoll erstellen und dann die 7-Tage-Protokolle entfernen und die tar-Datei nach den nächsten 7 Tagen ausschließen“

Skript „7 Tage tar-Protokoll erstellen und dann die 7-Tage-Protokolle entfernen und die tar-Datei nach den nächsten 7 Tagen ausschließen“

Ich versuche, ein Skript zu erstellen, das alle vorherigen Protokolle der letzten 7 Tage in eine TAR.GZ-Datei umwandeln und die TAR-Datei beim nächsten Durchlauf ausschließen kann.

Ist das Skript in Ordnung oder muss ich eine Änderung vornehmen?

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

Antwort1

Versuche dies,

 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
  • maxdepthVerzeichnisebenen
  • type fnur Dateien
  • ! -nameschließt die Datei mit dem Muster aus.tar.gz
  • --remove-filesentfernt Dateien, die tariert sind

verwandte Informationen