Moin zusammen,
da ich beim googlen nichts vermeindbar passendes gefunden habe, stelle ich meine Frage einmal hier.
Ich nutze zum Aufzeichnen von Sendungen tvheadend und zum überspringen von Werbung comskip.
In tvheadend kann ich angeben wann Aufzeichnungen automatisch gelöscht werden sollen, tvheadend löscht dann selbständig die Aufzeichnungen und Unterordner wenn diese leer sind.
Durch die Nutzung von comskip werden jedoch .txt und .edl Files erzeugt, deren verbleib dafür sorgen, dass tvheadend zwar das Recording, aber im Anschluss nicht den Ordner löscht, welches den Verzeichnisbaum entsprechend anwachsen und den WAF, beim Auswählen von Recordings z.B. via Kodi, entsprechend in die Tiefe schnellen lässt ::).
Daher möchte ich nun selber per Cron ein Shell Script einplanen, welches Verzeichnisse löscht, die nur noch .edl und oder .txt Files enthalten.
Hoffe hier finden sich entsprechend Shellwissende :)
Greetz
Eldrik
kannst Du nicht die Dateien direkt nach dem abarbeiten von comskip diese direkt löschen lassen?
ansonsten so völlig rudimentar: rm -rf /pathToTempData/*.{edl,txt}
ABER PASS AUF --> keine Rückfragen
Und löscht nur die Dateien, nicht die Ordner
Zitat von: CoolTux am 26 November 2018, 15:38:38
Und löscht nur die Dateien, nicht die Ordner
dann noch den
find /pathToTempData/* -depth -type d -empty -exec rmdir {} \;
hinterher ;-)
Zitat von: Wuppi68 am 26 November 2018, 15:37:48
kannst Du nicht die Dateien direkt nach dem abarbeiten von comskip diese direkt löschen lassen?
ansonsten so völlig rudimentar: rm -rf /pathToTempData/*.{edl,txt}
ABER PASS AUF --> keine Rückfragen
Hi,
Nein, das geht so nicht, da die Aufnahmedatei als solches nicht verändert wird, sondern lediglich die Werbestellen, in dem edl und txt File aufgeführt und durch den Player bei der Wiedergabe übersprungen werden.
Ich werde mit den Codebeispielen mal etwas herumexperimentieren , danke euch 😊
Greetz
Eldrik
Moin zusammen,
kurzes Update, ich verwende jetzt folgende Zeilen um Ordner zu suchen und zu löschen, die keine Video Files enthalten.
#! /bin/bash
cd /verzeichnisname/
find -depth -type d | while read -r D
do
v=$(find "$D" -iname '*.ts' -o -iname '*.mkv' -o -iname '*.avi')
case "$v" in
"" )
#echo "$D no ts & mkv & avi"
rm -fr "$D" #uncomment to use
;;
esac
done
Greetz
Eldrik