Dateien nach x Tagen automatisch löschen

  • 9 Antworten
  • Letztes Antwortdatum
K

keineAhnun1

Neues Mitglied
1
Moin,

ich suche eine Möglichkeit, das die Fotos im Verzeichnis /DCIM nach x Tagen automatisch gelöscht werden.

In diesen Beitrag ist eine Möglichkeit allerdings benötige ich da root . Gibt es eine andere Möglichkeit (ohne root)?
 
@keineAhnun1 Hallo, probiere über "Shell ausführen" :

find /storage/emulated/0/DCIM/ -type f -mtime +7 -exec rm {} \;

In dem Beispiel ist es für Fotos älter als 7 Tage. Das heißt, du lässt den Task z.B. täglich ausführen, es werden diejenigen Fotos gelöscht, die älter als 7 Tage sind.

Ich hoffe, es klappt. Hatte mir das mal so kopiert und hatte funktioniert.
 
Zuletzt bearbeitet:
Vielen Danke für Deine Antwort.

Leider kann ich den Shell nicht ausführen. Ich bekomme den Hinweis „this only works with a rooted device“. Den Shell ausführen geht nur, wenn es gerooted ist oder gibt es dafür ein workaround?
 
@keineAhnun1 Mein Gerät war nicht gerootet. Es sind aber dann wohl einmalig vom PC aus zu setzende adb-Berechtigungen notwendig.

Vermutlich diese:
adb shell pm grant net.dinglisch.android.taskerm android.permission.WRITE_SECURE_SETTINGS
 
Zuletzt bearbeitet:
Eigentlich braucht man nichts von alledem.
Ich habe mir in einem anderen Kontext einen ähnlichen Task gebaut.
Es reicht doch völlig aus, das Verzeichnis zu lesen und dann über eine For-Schleife und die Funktion "Test File" das Änderungsdatum zu prüfen. Wenn das länger als der gewünschte Zeitraum in der Vergangenheit liegt, löscht man die Datei.

Also in etwa so (im Beispiel Löschung Dateien älter 3 Monate / entspricht 7776000 Sekunden):

Task Name XXX
<Definition Verzeichnis>
A1: Variable Set [ Name:%directory_path To: DCIM/ Recurse Variables:Off Do Maths:Off Append:Off Max Rounding Digits:3 ]
A2: Variable Set [ Name:%type To:file Recurse Variables:Off Do Maths:Off Append:Off Max Rounding Digits:3 ]
<Aktuelles Datum minus 3 Monate>
A3: Variable Set [ Name:%purge_date To:%TIMES - 7776000 Recurse Variables:Off Do Maths:On Append:Off Max Rounding Digits:3 ]
<Analyse Dateien>
A4: Anchor
A5: List Files [ Dir:%directory_path Match: Include Hidden Files:Off Use Root:Off Sort Select:Alphabetic Variable:%file_list ]
A6: For [ Variable:%file Items:%file_list() ]
A7: Test File [ Type:Modified Data:%file Store Result In:%mod_date_time Use Root:Off Continue Task After Error:On ]
A8: Test File [ Type:Type Data:%file Store Result In:%file_type Use Root:Off Continue Task After Error:On ]
A9: Variable Set [ Name:%output To:%file Recurse Variables:Off Do Maths:Off Append:Off Max Rounding Digits:3 ] If [ %mod_date_time < %purge_date & %file_type eq %type ]
A10: Delete File [ File:%output Shred Level:0 Use Root:Off Continue Task After Error:On ] If [ %output Set ]
A11: Variable Clear [ Name:%output Pattern Matching:Off Local Variables Only:Off Clear All Variables:Off ] If [ %output Set ]
A12: End For

[Edit] Exportierte Task ergänzt
 
Zuletzt bearbeitet:
@holms: die Berechtigung habe ich gesetzt aber die Meldung bleibt leider.

@MeinNickname: Danke für Deine Unterstützung. Die Lösung mit „find…“ fand ich ganz gut und für mich einfach. Da es aber wohl so nicht machbar ist, werde ich Deinen Lösungsansatz probieren. Als Anfänger nicht ganz so einfach, welchen Task muss ich auswählen?
 
keineAhnun1 schrieb:
In diesen Beitrag ist eine Möglichkeit allerdings benötige ich da root
Bei mir funktioniert dieser Befehl ohne root.
Hatte aber am Anfang Probleme dass der Dateipfad nicht korrekt war. Hast du den Fehler in einer Variable gespeichert? Wenn ja, wie ist die Fehlermeldung?


holms schrieb:
probiere über "Shell ausführen" :

find /storage/emulated/0/DCIM/ -type f -mtime +7 -exec rm {} \;
Bei diesem Befehl bekomme ich auch den Fehler mit der fehlenden Berechtigung. Berechtigungen für Tasker habe ich aber eigentlich alle gesetzt.


Die For-Schleife hat den Nachteil das sie lange braucht bis sie alle Dateien gelesen hat.
Der Shell Befehl braucht bei mir zum 120 Bilder kontrollieren und 100 Bilder löschen 0.5 Sekunden. Die Schleife braucht 5.5 Sekunden für die gleichen Bilder oder wenn man sie noch optimiert 4.5 Sekunden
Beiträge automatisch zusammengeführt:

Hier noch meine optimierte For-Schleife
Task importieren
Code:
    For-Schleife (174)
        A1: Variable Setzen [ Name:%days Zu:30 Recurse Variables:Aus Mathematisch:Aus Hinzufügen:Aus Max Rounding Digits:3 ]
        A2: Variable Setzen [ Name:%purge_date Zu:%TIMES-(86400*%days) Recurse Variables:Aus Mathematisch:An Hinzufügen:Aus Max Rounding Digits:3 ]
        A3: Dateien Auflisten [ Ordner:DCIM/Camera Übereinstimmung: Versteckte Dateien Anzeigen:Aus Benutze Root:Aus Sortierreihenfolge wählen:Modification Date Variable:%file_list ]
        A4: For [ Variable:%file Einträge:%file_list() ]
        A5: Datei Testen [ Typ:Verändert Daten:%file Ergebnis Ablegen In:%date Benutze Root:Aus ]
        A6: Stopp [ (Fehler):Aus Task: ] If [ %date > %purge_date ]
        A7: Lösche Datei [ Datei:%file Schredderlevel:0 Benutze Root:Aus Task Weiter Ausführen Nach Fehler:An ]
        A8: End For
 
Zuletzt bearbeitet:
@keineAhnun1 Irgendwie verstehe ich Deine Frage nicht. Ich habe den kompletten Task aus Tasker exportiert.
Du solltest das im Zweifel einfach abtippen können?

@Mathens Die Laufzeit ist mir relativ egal, da ich solche Tasks ausschließlich nachts laufen lasse, wenn das Gerät geladen wird. Ob das Ganze dann 0,5 Sekunden, 5 Sekunden oder 1 Minute dauert, ist in dem Kontext relativ egal.
Ich wollte nur eine einfache Lösung ohne Root vorschlagen ;)
 
@MeinNickname in deinem Fall spielt es vielleicht keine Rolle. Wollte nur darauf Hinweisen das die Schleife eben diesen Nachteil hat. Hätte die For-Schleife auch als mögliche Lösung vorgeschlagen wenn du nicht schneller gewesen wärst😉
 
@MeinNickname: Naja, ich habe gestern erst die App installiert und wie ich mit den Variablen und der App umgehen sollte, muss ich erst noch lernen.

@Mathens Danke, ich habe denTask Importiert und das Verzeichnis entsprechend angepasst und läuft 😀, sehr schön!

Der zeitliche unterschied wird mich auch nicht stören, vielen Dank für Eure Unterstützung 👍
 
  • Danke
Reaktionen: Mathens

Ähnliche Themen

Doni890
Antworten
1
Aufrufe
331
jandroid
jandroid
H
Antworten
0
Aufrufe
273
Horgul123
H
X
Antworten
1
Aufrufe
311
xyzUpdate
X
Zurück
Oben Unten