Hallo zusammen,
ich speichere den Output einer Überwachungskamera auf einem Server in einem Ordner. Dort sollen alle Dateien, die älter als X Tage sind, wieder gelöscht werden.
Leider führt sich der Cronjob wohl nicht (korrekt) aus?
Wie ist das Skript aufgebaut? autodelete.sh
1 2 3 4 | #!/bin/bash find /var/www/upload/Kamera_EINS/* -maxdepth 1 -type f \( -name "*.jpg" \) -mtime +2 -exec rm {} \; find /var/www/upload/Kamera_ZWEI/* -maxdepth 1 -type f \( -name "*.jpg" \) -mtime +2 -exec rm {} \; |
Wo liegt das Skript? Aktuell liegt das Skript in "/usr/local/sbin/"
Wie ist der Cronjob aufgebaut? sudo crontab -e
1 | 0 2 * * * /bin/bash/ /usr/local/sbin/autodelete.sh |
Was habe ich bereits versucht:
Eintragen über "sudo cronjob -e" als auch über "cronjob -e"
Das Skript über "chmod +x" ausführbar gemacht
Das Skript gibt mir jedoch nun beim manuellen Ausführen die Rückmeldung unable to execute /usr/bin/find: Argument list too long
Nun habe ich über Google noch die Möglichkeit gefunden, folgenden Befehl stattdessen auszuführen:
1 | for i in * ; do rm $i ; done |
Kann ich hier auch die zeitliche Beschränkung ("Älter als X Tage") einbauen?