Problem mit Bash Datei zum auswerten der GPIO

  • Hallo ihr Lieben,

    da mir dieses Forum schon öfter geholfen hat (ohne das ich angemeldet war) möchte ich mich mit einem einem Problem an Euch wenden, bei dem ich überhaupt nicht weiter komme.


    Ich habe folgendes Script, zum auswerten der GPIO:


    Im Grunde handelt es sich um ein bekanntes Script aus dem Netz, was hervorragend für meine Zwecke gepasst hast und ich einfach angeglichen habe.


    Wenn ich das Script als Superuser in der Konsole starte bekomme ich folgende Fehlermeldung:


    ./logger.sh: Zeile 4: echo: Schreibfehler: Das Argument ist ungültig.


    ---- und die Konsole geht nicht mehr weiter.


    Solange die Konsole dann geöffnet ist funktioniert das Programm perfekt, bis ich sie schließe.


    Ich bin die Datei immer wieder durchgegangenen und weiß mir keine Erklärung.

    Vielleicht kann mir ja jemand von Euch helfen.


    Vielen Dank schon mal im voraus.

    • Official Post

    Zeile 4: echo: Schreibfehler: Das Argument ist ungültig.

    Ist eigentlich klar, weil 15 nicht aktiviert ist. Der einzige Fehler ist eine falsche Zeilenangabe in der Fehlermeldung, denn gemeint ist Zeile 3 mit echo "15" > /sys/class/gpio/unexport.


    Gib mal im Terminal nacheinander folgende 3 Zeilen ein.

    Code
    echo "15" > /sys/class/gpio/unexport
    echo "15" > /sys/class/gpio/export
    echo "15" > /sys/class/gpio/unexport

    Die erste Zeile wird den Fehler werfen, die zweite dürfte funktionieren (keine Ausgabe) und die dritte dann auch.

  • Hallo,

    vielen Dank für den Hinweis.

    Das stimmt, ich habe die Zeile auskommentiert und es kommt keine Fehlermeldung mehr.


    Wenn ich das Programm nun in der Konsole starte, funktioniert das Programm, die Konsole geht aber nicht mehr weiter.

    Das Programm läuft dann solange, bis ich die Konsole wieder schließe.


    Es muss also noch ein Fehler da sein, oder?

    • Official Post

    Was soll das Skript ünerhaupt machen? Soll das einfach nur in die /var/www/log.txt schreiben?

    die Konsole geht aber nicht mehr weiter.

    Was meinst Du damit? Du kannst keine weiteren Eingaben machen?


    Dann starte das Skript einfach mit ./logger.sh &. Durch das & am Ende läuft das Skript dann im Hintergrund.


    //Vergessen: Wenn Das Skript trotz der Fehlermeldung läuft, dann lass die Zeile besser drinnen!

  • Vielen Dank,

    das war genau das was mir gefehlt hat.

    Jetzt funktioniert es erstmal so wie es soll.


    Im Grunde soll einfach nur aufgezeichnet werden, wie lange der Taster am PIN eingeschaltet und ausgeschaltet ist - das macht es nun.


    Den Befehl & nach dem Dateinamen hatte ich allerdings nicht auf dem Schirm.


    Ich probiere mal noch ein bisschen rum, wenn mir noch was auffällt melde ich mich.

    Bis dahin ist aber mein Problem gelöst.:bravo2:


    Also vielen Dank dafür und bleibt Gesund.