mannohneschuh schriebWenn ich demnächst mal etwas Zeit hab werd ich mal schauen ob ich ihm beibringe nur neue Einträge zu erkennen.
Das ist ja kein Problem. D.h. die podcast xml Datei "wächst" ständig eben um die neuesten Quarks-Sendungen? Dann kannst du u.a. zwei Ansätze verfolgen:
a) Laß das Skript das Datum (bzw. den Datums-Identifikator wie 20101006) in eine Textdatei speichern, und zwar den jüngsten/höchsten von dem Video, was du heruntergeladen hast. Beim nächsten Run wird nun dieser Wert eingelesen und beim Iterieren über die Items z.B. der system(cmd) nur für den Eintrag gestartet dessen Datum neuer ist.
Ruby (wie andere Sprachen) kann wunderbar mit Datums-Objekten "rechnen", mein erster Ansatz war für das Datum im Dateinamen das XML-Datumfeld von <pubDate> zu nutzen, aber das Datum im Link-Dateinamen/Titel unterscheidet sich leider oft davon. Aber man kann aus 20061006 auch problemslos eine Time/Date Instanz erstellen (oder sogar einfach mit der "Zahl" 20101006 "rechnen"...
b) Das Skript "schaut" ob es die Datei mit dem Namen aus t_fname schon gibt und übergeht dann den erneuten Download. Klappt natürlich nur wenn du alle Videos an einem Platz liegen hast und du wirklich alle Videos aus der XML-Datei haben willst (aber eben nur neue runterladen willst beim Skript-Lauf).
//Edit:
c) Es gibt auch sicher bei wget eine Option die einen wiederholten Download einer Datei übergeht...