CSV Format

L I V E Stammtisch ab 20:30 Uhr im Chat
  • Hallo,

    ich will mehere Temperaturen in eine CSV-Datei Schreiben und das Zeile für Zeile. Das Format der erstellten csv passt nicht. Wie kann man alles in eine Zeile bekommen? Die csv sieht so aus:

    12.10.2021

    ;10:22;19,1

    ;50,0

    ;19,2

    ;48,3

    ;15,6

    ;63,5

    ;12,2

    ;80,1

    Mein Skript ist:

    #!/bin/bash

    #Aktuelles Datum mit Uhrzeit einer Variablen zuweisen

    datum=$(date +%d.%m.%Y)

    zeit=$(date +%H:%M)

    # Im Skript den Ordner wechseln und die Temperaturdaten auslesen

    #cd /home/pi/Adafruit_Python_DHT/examples

    WERTE1=$(sudo ./AdafruitDHT.py 22 20)

    set −− $WERTE1

    ogtemp=$2

    ogluft=$3

    WERTE2=$(sudo ./AdafruitDHT.py 22 26)

    set −− $WERTE2

    egtemp=$2

    egluft=$3

    WERTE3=$(sudo ./AdafruitDHT.py 22 21)

    set −− $WERTE3

    kgtemp=$2

    kgluft=$3

    WERTE4=$(sudo ./AdafruitDHT.py 22 16)

    set −− $WERTE4

    autemp=$2

    auluft=$3

    # Ausgabe semikolonsepariert in Datei

    echo "$datum;$zeit;$ogtemp;$ogluft;$egtemp;$egluft;$kgtemp;$kgluft;$autemp;$auluft" >> log.csv

  • Auf einem PC-Debian ist es nicht so:

    Script verkürzt weil keine DHTs da sind:

    log.csv fuer diesen Fall:

    Code
    12.10.2021;12:34;;;;;;;;
    12.10.2021;12:34;;;;;;;;
    12.10.2021;12:34;;;;;;;;

    Hast du irgenwelche Optionen der bash gesetzt?

  • Es ist auf meinen Pi und nicht auf einem PC. Mit der verkürzten Version erhalte ich immer noch eine zweite Zeile.

    12.10.2021

    ;13:07;;;;;;;;

    Optionen der bash, das kenne ich leider nicht und mir ist nicht bewusst da irgendetwas verändert zu haben.

  • Beitrag von llutz (12. Oktober 2021 um 13:21)

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • Die kurze Version laeuft auch auf einem Raspberry:

  • wenn ich das so ausführe wird zwar eine csv erstellt diese hat aber wieder die falsche Anordnung und es kommen ein paar Fehlermeldungnen

    ./aus2.sh: Zeile 1: pi@raspberrypi:~: Kommando nicht gefunden.

    ./aus2.sh: Zeile 3: $'\r': Kommando nicht gefunden.

    ./aus2.sh: Zeile 5: $'\r': Kommando nicht gefunden.

    ./aus2.sh: Zeile 6: $'\r': Kommando nicht gefunden.

    ./aus2.sh: Zeile 7: $'\r': Kommando nicht gefunden.

    ./aus2.sh: Zeile 9: $'\r': Kommando nicht gefunden.

    ./aus2.sh: Zeile 11: $'\r': Kommando nicht gefunden.

    ./aus2.sh: Zeile 13: $'\r': Kommando nicht gefunden.

    ./aus2.sh: Zeile 15: $'\r': Kommando nicht gefunden.

    ./aus2.sh: Zeile 16: $'\r': Kommando nicht gefunden.

    ./aus2.sh: Zeile 17: pi@raspberrypi:~: Kommando nicht gefunden.

    ./aus2.sh: Zeile 18: pi@raspberrypi:~: Kommando nicht gefunden.

    ./aus2.sh: Zeile 19: pi@raspberrypi:~: Kommando nicht gefunden.

    ./aus2.sh: Zeile 20: pi@raspberrypi:~: Kommando nicht gefunden.

    ./aus2.sh: Zeile 21: Syntaxfehler beim unerwarteten Wort `;;'

    '/aus2.sh: Zeile 21: `12.10.2021;15:23;;;;;;;

  • Davon abgesehen gehören nicht alle Zeilen in dem Codeblock zum Skript.

    Btw. bei mir funktioniert mein Testskript auch.


    Code: log.csv
    12.10.2021;20:16;1;2;3;4.5;5.5;6;7;8
    12.10.2021;20:18;1;2;3;4.5;5.5;6;7;8
    12.10.2021;20:18;1;2;3;4.5;5.5;6;7;8
    12.10.2021;20:27;1;2;3;4.5;5.5;6;7;8

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!