Das letztes Wochenende hat uns unsere Wetterstation ein wenig in Arbeit gehalten. Ein TCP-RAW Stream überträgt zyklisch die Werte und erstellt damit eine Datei auf Seite des Servers. Diese Datei wird dann zerlegt und verschiedene nummerische Werte werden weiterverarbeitet.
Probelm hierbei: Beim übertragen der Datei erhalten alle Zeilen ein „r“ am Ende. Beim einlesen dieser Strings im Shell-Script wurden dann die Fehlermeldung „illegal character: ^M“ häufig ausgegeben.
Ein einfaches Konvertieren war deshalb nicht möglich, es musste auf einen Trick zurückgegriffen werden:
temp_num=$(echo "$temp_str" | tr -d $'r')
Durch den Befehl
tr -d $'r'
wird das „r“ am Ende des Strings einfach entfernt. Dadurch konnte auch die Konvertierung problemlos vollzogen werden.
Schreibe einen Kommentar