Radiostreams aufzeichnen und alte löschen

Ich habe ja bereits gezeigt, wie schön man Radiostreams aufzeichnen kann, was vor allem für Dokumentationszwecke interessant ist (Inhaltsstudien oder Nachweise für Betreiber von Webradios). Das Problem ist nur, dass meistens relativ schnell die Festplatte voll läuft, weil mehrere Tage Aufzeichnung schnell in den mehrere GB-Bereich gehen und gerade Vserver nicht unbedingt immer mit viel Plattenkapazität strotzen.

Umso wichtiger ist es, dass man, wenn man nicht selbst immer die Aufzeichnungen löschen möchte, diese automatisch löschen lässt. Dabei geht man am einfachsten hin, sagt, wieviele Stunden Airchecks man behalten möchte und löscht dann das, was zuviel ist. Wenn man also für jede Stunde einen eigenen Mitschnitt anfertigen lässt und möchte die Mitschnitte 5 Tage speichern, dann ist man bei 24 Stunden * 5 Tage = 120 Dateien, die man halten möchte. Daraus ergibt sich dann folgendes Skript:


#!/bin/bash
#hier bitte angeben wie viele dateien behalten werden sollen.
declare -i MAXKEEP=49
IFS='
'
declare -i cnt=0

for x in $(find /pfad/zu/den/airchecks -type d -printf ‚%T@ %p\n’|sort -n -r); do
fname=$(echo $x|awk ‚{print $2}‘)
if [ $((++cnt)) -gt $MAXKEEP ]; then
rm -R $fname
fi
done

Dieses Skript löscht selbstständig Daten! Keine Haftung und bitte vorher testen!, zum Beispiel, in dem man das „rm -R“ durch ein „echo“ ersetzt. Dann wird bei einer händischen Ausführung angezeigt, welche Dateien gelöscht werden würden. Wenn man mit dem Ergebnis zufrieden ist, dann kann man es in die Cronjobs setzen. Nicht vergessen, das „echo“ wieder durch ein „rm -R“ zu ersetzen.

, am

Schreibe einen Kommentar