Ich habe eine Liste der Protokolldateien in einem Verzeichnis, die seit mehr als einem Jahr angehäuft sind. Ich habe das folgende Skript geschrieben, um die Protokolldateien zu archivieren, die älter als 15 Tage sind.Unix-Skript-Archiv Protokolldateien älter als 15 Tage
Script:
#!/bin/bash
files=($(find /opt/Informatica/9.5.1/server/infa_shared/SessLogs -type f -mtime +15))
file=SessLog_bkup_`date +"%y-%m-%d"`.tar.gz
Backup=/opt/Informatica/9.5.1/server/infa_shared/SessLogs/Backup
tar -zcf $file --remove-files "${files[@]}"
mv $file $Backup
Aber, wenn ich das Skript es unter Fehler wirft
Fehler:
./backuplogs.sh: line 5: /bin/tar: Argument list too long.
Bitte informieren Sie, wenn ich Ich vermisse dich etwas im Skript ing
Dank für die Hilfe Kiran
Die Standardlösung dafür ist ['logrotate'] (https://github.com/logrotate/logrotate) – hek2mgl