Wenn Sie dieses Mal ein CCTV-System mit Raspberry PI erstellen, erstellen Sie einen Befehl und registrieren Sie ihn in Cron, um Bild- und Videodateien, die einen bestimmten Zeitraum verstrichen sind, automatisch zu löschen.
Der folgende Befehl zeigt Dateien an, die älter als ein Tag sind. Aktuelles Datum: 29.09.2020 Dateien abrufen, die älter als 1 Tag sind: Geben Sie das Argument "+1" an. 28. Datei abrufen: Geben Sie das Argument von "+1" bis "0" an.
■ Befehl
find /var/lib/motion -name '*.*' -mtime +1
■ Ausführungsergebnis
./03-20200926145041-02.jpg
./03-20200926145042-00.jpg
./03-20200926145042-01.jpg
./03-20200926145042-02.jpg
./03-20200926145043-00.jpg
./03-20200926145043-01.jpg
./04-20200927183825.avi
./04-20200927183825-00.jpg
./04-20200927183825-01.jpg
./04-20200927183825-02.jpg
./04-20200927183826-00.jpg
./04-20200927183826-01.jpg
./04-20200927183826-02.jpg
./04-20200927183826-03.jpg
Es wird gelöscht, indem dem obigen Befehl "-delete" als Argument hinzugefügt wird. Lassen Sie uns mit dem folgenden Befehl überprüfen.
■ Befehl
find /var/lib/motion -name '*.*' -mtime +1 -delete
■ Ausführungsergebnis Der folgende Fehler wird angezeigt. Der Grund ist, dass Sie keine Berechtigung zum Löschen des Verzeichnisses haben. Verwenden Sie in diesem Fall den Befehl "sudo" mit den Berechtigungen "root", um die Datei zu löschen.
find: kann nicht gelöscht werden. / Var / lib / motion / 17-20200927213443-01.jpg.
■ Löschen Sie erneut mit dem Befehl sudo Führen Sie den folgenden Befehl aus.
pi@raspberrypi:/var/lib/motion $ sudo find /var/lib/motion -name '*.*' -mtime +1 -delete
pi@raspberrypi:/var/lib/motion $
■ Überprüfen Sie, ob gelöscht Stellen Sie sicher, dass die Datei gelöscht und im folgenden Ergebnis der Befehlsausführung nicht angezeigt wird.
pi@raspberrypi:/var/lib/motion $ sudo find /var/lib/motion -name '*.*' -mtime +1
pi@raspberrypi:/var/lib/motion $
Verwenden Sie unter Linux cron, um bestimmte Befehle oder Programme regelmäßig auszuführen. Für Windows ist es dasselbe wie für den Taskplaner.
■ Befehl Es wird angezeigt, wenn Sie es zum ersten Mal ausführen (siehe Abbildung unten). Ich mag den VI-Editor, also wähle ich 2.
pi@raspberrypi:/var/lib/motion $ crontab -e
no crontab for pi - using an empty one
Select an editor. To change later, run 'select-editor'.
1. /bin/nano <---- easiest
2. /usr/bin/vim.tiny
3. /bin/ed
Choose 1-3 [1]:2
■ Cron-Einstellungen Fügen Sie die folgende Zeile hinzu. Jeden Tag um 1:00 Uhr wird der Befehl zum Löschen von Dateien ausgeführt, die älter als 31 Tage sind.
Referenz: Cron-Konfigurationshandbuch https://www.express.nec.co.jp/linux/distributions/knowledge/system/crond.html
m h dom mon dow command
0 1 * * * sudo find /var/lib/motion -name '*.*' -mtime +31 -delete
Wenn Sie diesen Inhalt dieses Mal anwenden, können Sie die Datei komprimieren, an eine E-Mail anhängen und automatisch in den Slack-Chat hochladen. Ich werde in naher Zukunft ein Programm zum Anhängen an E-Mails und Slack schreiben.
Recommended Posts