[gelöst] bash script - Wert aus langer Zeichenkette finden

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
joe2017
Beiträge: 1136
Registriert: 07.08.2017 14:29:51

[gelöst] bash script - Wert aus langer Zeichenkette finden

Beitrag von joe2017 » 24.07.2023 08:53:40

Guten Morgen zusammen,

ich häng gerade etwas auf dem Schlauch. Ich habe so etwas ähnliches schon mit awk gemacht. Finde aber irgendwie gerade nicht mehr meine Lösung.

Ich lese etwas mittels script aus einem Hardwaresensor aus und erhalte Komma getrennte Werte zurück. Mich interessiert eigentlich nur ein Wert. Die zurückgegebenen Werte sehen wie folgt aus...

Code: Alles auswählen

"id":"100","name":"anschluss",...usw...,"value"="1.00",...usw...
Ich benötige eigentlich nur den Wert 1.00 des Parameters "value"

Wie kann ich das mit einem simplen einzeiler Lösen?

Vielen Dank
Zuletzt geändert von joe2017 am 24.07.2023 09:11:30, insgesamt 1-mal geändert.

Benutzeravatar
joe2017
Beiträge: 1136
Registriert: 07.08.2017 14:29:51

Re: bash script - Wert aus langer Zeichenkette finden

Beitrag von joe2017 » 24.07.2023 09:03:10

Wenn ich nach meinem Befehl folgendes schreibe, erhalte ich zumindest die richtige Zeile:

Code: Alles auswählen

Befehl | awk -F "," '{ print $14 }'
Sollte sich an dem Sensor mal was ändern, erhalte ich aber vielleicht einen falschen Wert. Das ist mir zu unsicher. Vielleicht kann man das mit "find" besser lösen?

tobo
Beiträge: 1996
Registriert: 10.12.2008 10:51:41

Re: bash script - Wert aus langer Zeichenkette finden

Beitrag von tobo » 24.07.2023 09:06:45

Ne, find findet Dateien.

Mit sed ginge sowas:

Code: Alles auswählen

sed -n 's/.*"value":"\([^"]*\)".*/\1/p'
Inklusive der Annahme, dass du "value" auch mit : anstatt = zuordnest. Ansonsten entsprechend umändern.

Edt: Schalter -n und print ergänzt.
Zuletzt geändert von tobo am 24.07.2023 09:12:14, insgesamt 1-mal geändert.

Benutzeravatar
joe2017
Beiträge: 1136
Registriert: 07.08.2017 14:29:51

Re: bash script - Wert aus langer Zeichenkette finden

Beitrag von joe2017 » 24.07.2023 09:11:13

Puh... Krasse Syntax! Aber hat genau das gemacht was es soll!
Also wer sowas aus dem Kopf kann... Respekt! :hail:

Vielen Dank :-)

Antworten