[Bash] Falsche Zahl wird an MySQL übergeben

Revolution

Commodore
Registriert
März 2008
Beiträge
4.965
Hallo zusammen

Folgender Code

Code:
#!/bin/bash
watt=$(wget http://192.168.178.7/a -q -O - |grep Watt|sed s/\ Watt//)
kwh=$(wget http://192.168.178.7/a -q -O - |grep kWh|sed s/\ kWh//|sed s/\,/\./|sed s/^\ //)
datum=$(date +"%Y-%m-%d %H:%M:%S")
mysql -D smartmeter -u smartmeter -psmartmeter -e "INSERT INTO smartmeter_electricity (date, watt, kwh) VALUES('$datum', '$watt', '$kwh')"


kwh sind z.B 84455.452
watt sind 874

Das steht auch so in den Variablen drinnen.

Nur aus gründen die ich nicht so ganz verstehe trägt das Script in die Tabelle 999.999 bei kwh ein. Als Typ bei dem Feld habe ich selbst schon text ausgewählt und trotzdem trägt er mir den mist ein ...

Jemand ne Idee?
 
Zuletzt bearbeitet:
kwh und kWh
 
Was soll das sein? Ein PHP Skript? Wie sieht denn die Quelle aus? Ich tippe mal stark auf grep da läuft was schief.
 
Falscher Datentyp und vielleicht falsche Ländereinstellung fürs Dezimalzeichen?
 
WhyNotZoidberg? schrieb:
Das kwh ist aber konsitent die Variable und kWh greif ich von der Webseite ab das hat nichts miteinander zu tun ...


Cool Master schrieb:
Was soll das sein? Ein PHP Skript?

Revolution schrieb:
[Bash] #!/bin/bash



Cool Master schrieb:
Wie sieht denn die Quelle aus?

Revolution schrieb:
kwh sind z.B 84455.452
watt sind 874

Das steht auch so in den Variablen drinnen.



Cool Master schrieb:
Ich tippe mal stark auf grep da läuft was schief.
Nein

alxtraxxx schrieb:
Falscher Datentyp und vielleicht falsche Ländereinstellung fürs Dezimalzeichen?


Wenn ich echo $kwh eingeben kommt das richtige raus und das MySQL Feld ist derzeit text da kann gar nicht der falsche typ drinnen stehen :(
 
Zuletzt bearbeitet:
Echo und DB müssen aber nicht gleiche Einstellungen haben, ist unter Windows mit Eingabeaufforderung das gleiche, aber ich denke bei der Zahl die er einträgt liegt es vermutlich nicht daran. Was passiert denn, wenn Du mal einen fixen Wert im SQL einträgst oder sowas wie z.B. ('' + '$kwh') probierst?
 
Zurück
Oben