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.

Participate now!

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