(Burn-)Counter per Script erhöhen

  • Hallo zusammen!

    Leider gelingt es mir mit meinem Script zwar Aufnahmen auf eine DVDRAM zu schreiben (Es ist ziemlich zusammengesuchter Code (dafür Dank an alle die sich angesprochen fühlen) - aus dem Forum und den Weiten des Internets - für Verbesserungsvorschläge bin ich dankbar, die ASG (Advanced Scripting Generation) bitte ich schon mal um Nachsicht).


    Zielsetzung des Scripts war auf die von mir erworbenen DVDRAM Aufnahmen zu sichern. Das klappt nun auch aber nicht wie gewünscht Trotz Übernahme des Codes aus der vdrburn-dvd.sh, wird der vorhandene Counter "standard" auf "0000" gesetzt und nicht hochgezählt, und die svdrpsend.pl MESG ... erscheint ohne Angabe des (geschriebenen) Counters.


    Ist das überhaupt verständlich?! Ich versuche das mal anders:


    1. Der Counter des burn PLugins steht auf 0100
    2. Mein Script nimmt sich diesen Counter und schreibt ihn richtig ins Verzeichnis und kopiert dieses auf die DVDRAM
    3. Nun sollte der Counter auf 101 erhöht werden
    4. Der Counter des burn Plugins steht auf 0000
    5. Es soll eine MSG an den VDR geshickt werden "Aufnahme 100 fertig!", es wird aber nur angezeigt "Aufnahme fertig"


    So, hier mein Script:


    Danke im voraus für eure Hinweise!


    Lothar

  • Das du die Meldung "Aufnahme erfolgreich kopiert" kriegst, ist klar, schließlich setzt du DVD_ID erst 3 Zeilen später.


    Des weiteren denke ich, es liegt am "at now << EOF", weil so schon beim Aufruf des at now die Ersetzung von $DVD_ID gemacht wird, die Variable aber erst später zur Laufzeit gesetzt wird. Gleiches dürfte für einige andere Shell-Ersetzungen gelten.


    Wenn es denn unbedingt at now sein muss (war ich nie freund von), würde ich etwas in der Art vorschlagen:

    Bash
    #!/bin/bash
    if [ "$0" == "at-now" ] ; then 
        shift
        echo "$0" "$*" | at now
        exit
    fi
    ...


    Der Aufruf aus der reccmds.conf (vermute ich mal) muss dann mit at-now als erstem Parameter erfolgen.


    Drittens nominiert dein Code für den useless-use-of-cat award. So geht das ohne:
    (( DVD_ID = `sed "s/^0*//" < /etc/vdr/plugins/burn/counters/standard` + 1 ))


    Gruß,


    Udo

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!