Dateien nach x Tagen löschen aber nicht die jüngste Datei

Status
Für weitere Antworten geschlossen.

rabu

Benutzer
Mitglied seit
26. Sep 2013
Beiträge
278
Punkte für Reaktionen
2
Punkte
24
Hallo zusammen,
ich brauche mal ein bisschen Linux Unterstützung.

Ich habe einen Ordner, in dem wöchentlich händisch Daten abgelegt werden.
x1.dat 100mb 08.05.2015
x2.dat 100mb 15.05.2015
x3.dat 100mb 22.05.2015

Ich möchte gerne alle Dateien, die älter als xTage sind, löschen.
Das funktioniert auch mit find /volume1/Arbeit/test -mtime +30 -type f -delete

Die letzte Datei x3.dat soll aber nicht gelöscht werden, auch nicht wenn sie älter ist, denn die letzte Datei brauche ich immer noch zur Datensicherung.

Jetzt habe ich schon was wie mv $(find /volume1/Arbeit/test tail -n 1) /volume1/Arbeit/test1 versucht aber das funktioniert nicht.

Kann mir vielleicht jemand was schreiben wie z.B. "Lösche alle Datei aus dem Ordner und behalte die jüngste Datei (Datum)"

Da ich keine Linuxkenntnisse habe hoffe ich auf eure Hilfe.
 

Merthos

Benutzer
Mitglied seit
01. Mai 2010
Beiträge
2.709
Punkte für Reaktionen
2
Punkte
84
Vorher das Datum der letzten Datei ändern, z.B. so:
Rich (BBCode):
for i in `ls -t -r VERZEICHNIS | tail -n 1`; do touch "$i"; done
 

rabu

Benutzer
Mitglied seit
26. Sep 2013
Beiträge
278
Punkte für Reaktionen
2
Punkte
24
Ok, erst mal danke aber leider habe ich es noch nicht verstanden. Was genau macht das "for i usw." und warum muss ich vorher noch das Datum ändern?
 

Frogman

Benutzer
Mitglied seit
01. Sep 2012
Beiträge
17.485
Punkte für Reaktionen
8
Punkte
414
Das erklärt i zur Variablen in dem folgenden Ausdruck. In dem Ausdruck "ls..." wird dann die Liste der Dateien erzeugt, geordnet nach Modifikationsdatum, mit dem tail eingeschränkt auf die letzte (sprich aktuellste) Datei. Deren Modifikationsdatum wird dann mit dem touch aktualisiert, so dass sie wieder jünger ist als 30 Tage, dann bleibt sie beim löschen übrig.
 

rabu

Benutzer
Mitglied seit
26. Sep 2013
Beiträge
278
Punkte für Reaktionen
2
Punkte
24
Bildschirmfoto 2015-06-11 um 15.08.25.png
Funktioniert nicht. Was habe ich falsch gemacht?
 

Frogman

Benutzer
Mitglied seit
01. Sep 2012
Beiträge
17.485
Punkte für Reaktionen
8
Punkte
414
Eingangs redest Du von Dateien innerhalb eines Ordners, nun sind es aber Ordner unterschiedlichen Alters ?!
 

rabu

Benutzer
Mitglied seit
26. Sep 2013
Beiträge
278
Punkte für Reaktionen
2
Punkte
24
OK sorry, mein Fehler. Kann man dies auch auf Ordner adaptieren oder soll ich lieber direkt die Dateien in den Ordner speichern?
 

Merthos

Benutzer
Mitglied seit
01. Mai 2010
Beiträge
2.709
Punkte für Reaktionen
2
Punkte
84
Mach vorher noch ein cd in das Verzeichnis, dann sollte es eigentlich gehen,
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat