[gelöst] Script "Tatort nach Ermittler"

  • ... Ich brauch ein Script ... (aber bin nicht so fit)


    Ich nehme schon seit längerer Zeit alle Tatort Krimis auf. Die Tatort-Folgen erhalten vor Ihrem Titel noch die Folgennummer verpasst und werden zur Sortierung in den Unterordner Tatort_chronologisch/Jahreszahl verschoben.


    Also z.B. der letzte Tatort ist nun abgespeichert unter:
    /video0/Tatort_chronologisch/2010/(756)_Tatort:_Königskinder


    Nachdem sich doch nun schon ein paar (hundert) angesammelt haben, habe ich festgestellt, dass wir haupsächlich nach den Ermittlern entscheiden, welchen Tatort wir nun als nächstes schauen.


    Deshalb hätte ich gern noch eine Sortierung nach Ermmittler !!


    Die alte Sortierung soll bleiben (nix verschieben), deshalb will ich ein Verzeichnis mit Symlinks mit der neuen Sortierung anlegen. Hab das mal für ein paar mit der Hand gemacht. Das gefällt mir sehr gut.


    Das Script soll also:


    das /video0/Tatort_chronologisch-Verzeichnis mit all seinen Unterverzeichnissen nach Tatort-Folgen durchsuchen. Für alle gefundenen Folgen dann in einer Datenbank (Text-Datei) für die Folge den Ermittler ermitteln und dann (wenn nicht vorhanden) ein Verzeichnis für den Ermittler anlegen und dann darin ein Symlink auf die Folge anlegen.


    also z.B. für den neuen Tatort einen SymLink /video0/Tatort_nach_Ermittler/Lürsen/(756)_Tatort:_Königskinder


    ln -s "/video0/Tatort_chronologisch/2010/(756)_Tatort:_Königskinder" "/video0/Tatort_nach_Ermittler/Lürsen/(756)_Tatort:_Königskinder"


    Eine Zeile der Datenbankdatei könnte so aussehen:
    756;Tatort:_Königskinder;Lürsen
    Meine Tatort-Liste hab ich in Excel, kann man also leicht in ein passendes Textfile abspeichern.


    Ich bin sozusagen noch der totale Programmieranfänger und weiss nun gar nicht wie ich da überhaupt anfangen soll...


    Mit
    svdrpsend.pl lstr | grep 'Tatort_chronologisch' | grep 'Tatort: ' | sed ' .... ' | > tatort-folgen.txt
    könnte ich vieleicht relativ einfach nach den Tatort-Folgen suchen?


    Wie bekomme ich das denn jetzt alles in ein Script. Könnte mir da jemand ein wenig helfen?


    Viele Grüße
    Steevee

    VDR1: EasyVDR 2.0.0, MB Asus M2N-VM HDMI, TT S2-6400, ...
    VDR2: EasyVDR 2.0.0, MB Asus M4N78 Pro, AMD Athlon II X2 250, DVB-S2 TeVii S464, 2*DVB-S Budget, GraphTFT an VGA, TV an HDMI
    VDR3: EasyVDR 2.0.0, MB Asus M2N-VM HDMI, DVB-S FF1.3, DVB-S Budget, Atric-IR, GraphTFT an FF, TV an DVI
    #VDR4: EasyVDR 0.8.x, DVB-S FF1.3, DVB-S Budget, TV über AV-Board
    sonstige VDR Test-Hardware: Skystar HD2, Touch-TFT, IMON-LCD, Fritz-Box, ...

    Edited 3 times, last by Steevee ().

  • Schon mal ein erster Ansatz:


    Alle Tatort-Folgen finden, in denen ein bestimmter Ermittler mitspielt:


    Code
    find /video0/Tatort_chronologisch -name "info.vdr" -print0 | xargs -0r grep -l "ERMITTLER"


    Ersetze ERMITTLER durch den Namen des Ermittlers!


    Liefert eine solche Ausgabe:


    Code
    vdr02 / # find /video/ -name "info.vdr" -print0 | xargs -0r grep -l "Will Smith"
    /video/Will_Smith/I_Am_Legend/2010-02-07.22.05.50.99.rec/info.vdr
    /video/Will_Smith/Men_in_Black/2010-02-05.20.10.50.99.rec/info.vdr
    /video/Will_Smith/Men_in_Black_II/2010-02-07.20.10.50.99.rec/info.vdr


    Gruß
    Martin

    Hat mein Neffe abgestaubt:


    Gen2VDR auf Asus M2A-VM/Sempron LE-1100 mit TT-FF und Skystar2 in Thermaltake "Mozart"


    Aktuell: WIRD ERGÄNZT

    Edited once, last by maro1969 ().

  • Bei mir fuknt das:



    Aufrufen mit Argumenten:


    Code
    ./script.sh <Verzeichnis das durchsucht werden soll> <Ermitler> <Verzeichnis in dem das Ermitlerverzeichnis liegt>


    Bei der Ausführung:



    Profis bitte nicht lachen, bin auch nur Anfänger!!:)


    Gruß
    Martin

    Hat mein Neffe abgestaubt:


    Gen2VDR auf Asus M2A-VM/Sempron LE-1100 mit TT-FF und Skystar2 in Thermaltake "Mozart"


    Aktuell: WIRD ERGÄNZT

    Edited once, last by maro1969 ().

  • Hallo,


    vielen Dank für deine Hilfe.


    Auch nicht schlecht. Aus so was ähnlichem könnte man auch eine generelle Suche machen. Suchverzeichnis immer /video (ohne /video/Suche), Linkverzeichnis = /video/Suche/<Suchkriterium> und Suchkriterium per OSD dem Script übergeben. Dann hätten wir ne prima Suche in Aufzeichnungen.


    Jedoch brauch ich einen anderen Weg.


    Das Auslesen der Ermittler aus der info.vdr funktioniert leider bei den Tatort-Folgen nicht, da es jede Menge Folgen gibt, wo der Name des Ermittlers nicht im EPG drinsteht (Wäre natürlich auch die Aufgabe eines Scripts, dies der info.vdr hinzuzufügen).


    Beim Aufruf des Scripts möchte ich nicht den Ermittlernamen mit übergeben müssen. Es sollen einfach alle abgearbeitet werden. Im Laufe der letzten 37 Jahre Tatort sind ja über 60 verschiedene Ermittler am Werk gewesen. Ich weiß natürlich so nicht unbedingt, von welchen Ermittlern ich schon was aufgenommen habe.


    Deshalb möchte ich beim Erstellen der Links auf meine erstellte tatort.db (Nummer Tab Titel Tab Ermittler) zugreifen (siehe Anhang).


    Also schon so wie im ersten Post:

    Quote

    das /video0/Tatort_chronologisch-Verzeichnis mit all seinen Unterverzeichnissen nach Tatort-Folgen durchsuchen. Für alle gefundenen Folgen dann in einer Datenbank (Text-Datei) für die Folge den Ermittler ermitteln und dann (wenn nicht vorhanden) ein Verzeichnis für den Ermittler anlegen und dann darin ein Symlink auf die Folge anlegen.


    Dazu soll die Folge in der tatort.db anhand der Nummer gefunden werden, nicht nach dem Namen (ich geh davon aus, dass meine Nummerierung stimmt), denn bei manchen Titeln (wenn Sonderzeichen im Titel vorkommen) stimmt der Titel nicht immer 100% mit meiner Liste überein.


    ... Stunden später ...


    Ich hab das jetzt mal in Perl gemacht. Musste mich erst mal ein bisschen die Syntax einlesen. Ist ja teilweise nicht so klar (wenn man keine Ahnung hat).


    Rausgekommen ist das:


    und es funktioniert. Ich bin begeistert. Mein erstes Perl-Script. :)
    Viele Grüße
    Steevee

    Files

    VDR1: EasyVDR 2.0.0, MB Asus M2N-VM HDMI, TT S2-6400, ...
    VDR2: EasyVDR 2.0.0, MB Asus M4N78 Pro, AMD Athlon II X2 250, DVB-S2 TeVii S464, 2*DVB-S Budget, GraphTFT an VGA, TV an HDMI
    VDR3: EasyVDR 2.0.0, MB Asus M2N-VM HDMI, DVB-S FF1.3, DVB-S Budget, Atric-IR, GraphTFT an FF, TV an DVI
    #VDR4: EasyVDR 0.8.x, DVB-S FF1.3, DVB-S Budget, TV über AV-Board
    sonstige VDR Test-Hardware: Skystar HD2, Touch-TFT, IMON-LCD, Fritz-Box, ...

    Edited once, last by Steevee ().

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!