PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Alter Backup ordner löschen



eNvizion
04.05.07, 16:15
Hallo,

ich lege jede Nacht automatisch ein Backup von meinem Ordner /var/www/ ab, und zwar so:



datum=$(date +"%d.%m.%Y")

mkdir /mnt/backup/"$datum"/
mkdir /mnt/backup/"$datum"/www/

cd /mnt/backup/"$datum"/www/

cp /var/www/* -R /mnt/backup/"$datum"/www/


Jetzt meine Frage, mit welchem Befehl kann ich alte Backup Ordner löschen die älter als 5 Tage sind?

Das der dann zb. das heute Backup anlegt und das alte von vor 5 Tagen löscht.

Grüße
eNvizion

mattias1
04.05.07, 16:32
Suchfunktion

oder


man find

eNvizion
04.05.07, 16:48
Habs raus:

find /mnt/backup/ -ctime +5 -exec rm '{}' \;

kreol
04.05.07, 16:52
Ja, das löscht alle Dateien unterhalb von /mnt/backup/ die 5 Tage oder älter sind. Auf die ' und das letzte " kannst Du verzichten.

Mach doch vorsorglich erstmal einen Probelauf mit "... -exec ls -l {} \;". Das zeigt an, was es löschen würde...


Kreol

eNvizion
11.05.07, 06:14
Mit "-exec rm '{}' \;" löscht der alle Dateien, aber die Ordner bleiben da.
Was muss ich dann hinzufügen damit der auch die Ordner löscht?

Grüße
eNvizion

linuxazubi
11.05.07, 06:36
nur eine Idee:

rm -R

eNvizion
02.06.07, 15:11
find /mnt/backup/ -ctime +5 -exec rm -R {} \; funktioniert wunderbar, das +5 steht ja für die Dateien die 5 Tage oder älter sind, allerdings löscht er Dateien die 7 Tage älter sind, hat vielleicht jemand eine Idee wieso?
Mich stört es nicht, würde ich +3 setzen, macht der sicher 5 Tage, ich habe es aber noch nicht ausprobiert.