Script zur Timerabfrage

  • Ich bin dabei ein kleines Skript zu machen, mit dem abgefragt werden kann, ob gerade eine Aufnahem am VDR läuft, bzw. in den nächsten 5 Minuten ansteht. Dazu verwende ich ein Array:

    Code
    # Timer abfragen (rel=relativ zu jetzt) und in Array speichern
    VDRNEXT=($($SVDRPSEND NEXT rel | grep ^250)) # Array (Timer[1] Sekunden[2])


    Das Array enthält dann drei Werte (250 Timernummer ZeitZumTimer)
    Folgendes Problem habe ich. Zum Abfragen, bzw checken brauche ich den Wert in VDRNEXT[2]. Dieser scheint aber in einem seltsamen Format gespeichert zu sein:

    Code
    echo ${VDRNEXT[*]}
    Ergibt:
    + echo 250 39 $'7234\r'
    250 39 7234

    Wo kommt das $'-gedöns her? Vom VDR oder vom grep?
    Ich kann den Wert so nicht vergleichen ein -le oder so schlägt dann immer fehl:


    Hat da jemand eine Idee?

  • svdrp liefert DOS Zeilenumbrüche. Das ist das überflüssige (aus linux Sicht) "\r".


    cu

  • Code
    svdrpsend next rel|grep 250|cut -d"-" -f2

    VDR1: P5b-DE, E8400, 5TB Seagate Platten, squeezevdr/xbmc Frodo 2*Cinergy-1200, TT S2-3200,G210 MultiSeat für LG-32LD420+Desktop
    VDR2: AMD 5050e, Asus m3n78-pro, 2.5'' HDD, YAVDR-0.4, PT-AX100E+26'' BilligGlotze
    Server: Seagate Dockstar mit 2.5'' HDDs für Web/Mail/File/Print/Lirc/Musik 24/7

  • Der DOS-Hinweis hat mich weiter gebracht. Ich habe es jetzt ohen externen Programm hin bekommen:

    Code
    # Die Variable ${VDRNEXT[2]} ist als $'2354\r' gespeichert.
    # Eine Berechnung ist so nicht möglich.
    VDRNXT=${VDRNEXT[2]//$'\r'/}   # \r entfernen

    $VDRNXT ist dann die Zahl, mit der ich weiter arbeiten kann.

Jetzt mitmachen!

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