Ordner automatisch löschen, was mache ich falsch?

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

Status
Für weitere Antworten geschlossen.

quitschibo

Benutzer
Registriert
25. Aug. 2013
Beiträge
8
Reaktionspunkte
0
Punkte
0
hallo zusammen,

ich will auf meiner ds418play automatisch alte aufnahmen meiner zwei netatmos (schreiben über ftp auf die ds, sind als eigene nutzer mit zugriffsrechten angelegt) aus dem ordner löschen.
um nichts kaputt zumachen, will ich sie ersteinmal finden, aber das script im aufgabenplaner findet nichts.
es ist doch richtig, dass ich in den ergebnissen die gefundenen ordner angezeigt bekommen müsste, oder?
das script lautet "find /volume1/netatmo/eingang -mtime +1".
egal, ob ich unter den einstellungen den benutzer netatmo, admin oder root wähle, er findet nichts.
weiß jemand rat?


Bildschirmfoto 2019-02-18 um 11.21.55.jpgBildschirmfoto 2019-02-18 um 11.27.06.jpg
 
Wenn Du Deine Zeile in die Konsole gibst, dann bekommst Du eine Ausgabe.
Wohin soll denn das Ergebnis denn angezeigt werden? Die von Dir erwartete Ausgabe ist halt nicht definiert.

Setze mal Folgendes
find /volume1/netatmo/eingang -mtime +1 > /volume1/netatmo/mein_ergebnis.txt

Und dann kannst Du das Ergebnis in /volume1/netatmo/mein_ergebnis.txt einsehen :-)
 
cool, das geht!
d.h. wenn ich find "/volume1/netatmo/eingang -mtime +31 -delete" eingebe löscht er mir automatisch alle ordner, die älter als einen monat sind, richtig?
 
Die " passen so sicher nicht, kannst du mMn aber ganz weglassen in deinem Fall.

Bei -delete bin ich mir nicht sicher, ob alte Kernelversion das evt. noch nicht unterstützt haben. Das siehst du aber sofort, wenn du dein Skript testest.
Alternativ ginge: find /volume1/netatmo/eingang -mtime +31 -exec rm -r "{}" \;

Siehe zB. hier
 
hallo tproko,
danke für die antwort.
die "" waren falsch gesetzt, die sind so natürlich quatsch.
wenn ich es so eingebe, wie du sagst, bekomme ich folgende meldung per email:

Sehr geehrter Benutzer,

Aufgabenplaner hat eine geplante Aufgabe abgeschlossen.

Aufgabe: netatmo loeschen
Startzeit: Mon, 18 Feb 2019 22:05:51 GMT
Stoppzeit: Mon, 18 Feb 2019 22:05:51 GMT
Aktueller Status: 1 (Unterbrochen)
Standardausgabe/Fehler:
find: paths must precede expression: rm
Usage: find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [expression]


Mit freundlichen Grüßen
Synology DiskStation

ich muss mich mal auf die suche nach dem syntax machen, ich habe ja bestenfalls nur halbwissen....
 
so, habe weiter probiert.
es läuft, aber dann kommt die meldung, der ordner sei gelöscht.
bin darüber gestolpert, dass die kamera eine verzeichnisstruktur in der art erstellt, dass zuerst für das jahr ein ordner erstellt wird, dann darin der monat usw...
sobald ich den wert zum testen kleiner stelle, sind der jahresordner und der hauptordner zu alt und werden gelöscht...
also darf ich entweder nur die inhalte löschen (-type f) und regelmässig manuell die leeren ordner löschen oder ich finde eine andere lösung
 
Und wenn Du zwei Löschjobs/-befehle bauen würdest?

Der erste Job mit '-type f' der täglich rennt und der zweite, der mit einer längeren 'mtime' ohne diesen Schalter auskommt?
 
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