sed: Nicht beendeter s-Befehl? [Gelöst]

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
jmar83
Beiträge: 962
Registriert: 20.06.2013 20:20:15
Wohnort: CH
Kontaktdaten:

sed: Nicht beendeter s-Befehl? [Gelöst]

Beitrag von jmar83 » 29.07.2019 14:35:18

Das funktioniert

Code: Alles auswählen

  WEBADDRESS='"webaddress":'$(jq '.webaddress' <<< "$JSON_DATA");
  echo $JSON_DATA | sed 's/'$WEBADDRESS'/"webaddress":"5.5.5.5"/g' | sponge /opt/habridge/data/habridge.config 2> /dev/null;
Das nicht:

Code: Alles auswählen

  WEBADDRESS='"webaddress": '$(jq '.webaddress' <<< "$JSON_DATA");
  echo $JSON_DATA | sed 's/'$WEBADDRESS'/"webaddress":"5.5.5.5"/g' | sponge /opt/habridge/data/habridge.config 2> /dev/null;

Meldung: "Nicht beendeter s-Befehl". Das Problem scheint das Leerzeichen zu sein, welches in der Variable "WEBADDRESS" hinter dem ':' ist: "webaddress":"x.x.x.x" vs. "webaddress": "x.x.x.x"
Zuletzt geändert von jmar83 am 12.11.2019 15:29:05, insgesamt 2-mal geändert.
Freundliche Grüsse, Jan

Benutzeravatar
Meillo
Moderator
Beiträge: 8813
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: sed: Nicht beendeter s-Befehl?

Beitrag von Meillo » 29.07.2019 14:43:18

jmar83 hat geschrieben: ↑ zum Beitrag ↑
29.07.2019 14:35:18

Code: Alles auswählen

  WEBADDRESS='"webaddress": '$(jq '.webaddress' <<< "$JSON_DATA");
  echo $JSON_DATA | sed 's/'$WEBADDRESS'/"webaddress":"5.5.5.5"/g' | sponge /opt/habridge/data/habridge.config 2> /dev/null;

Meldung: "Nicht beendeter s-Befehl". Das Problem scheint das Leerzeichen zu sein, welches in der Variable "WEBADDRESS" hinter dem ':' ist: "webaddress":"x.x.x.x" vs. "webaddress": "x.x.x.x"
Korrekt. Du solltest Variablenexpansionen quoten. ;-)

Z.B. in der Art:

Code: Alles auswählen

sed 's/'"$var"'/.../g'
oder gleich so:

Code: Alles auswählen

sed "s/$var/.../g"
Es kommt ein bisschen darauf an, was mehr Sinn macht und was man sonst noch beachten muss ... also die ganz normalen Quoting-Regeln. Darueber solltest du dich informieren.
Use ed once in a while!

jmar83
Beiträge: 962
Registriert: 20.06.2013 20:20:15
Wohnort: CH
Kontaktdaten:

Re: sed: Nicht beendeter s-Befehl?

Beitrag von jmar83 » 05.08.2019 14:43:36

Hat geklappt, vielen Dank!!
Freundliche Grüsse, Jan

Benutzeravatar
Meillo
Moderator
Beiträge: 8813
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: sed: Nicht beendeter s-Befehl?

Beitrag von Meillo » 05.08.2019 21:48:17

jmar83 hat geschrieben: ↑ zum Beitrag ↑
05.08.2019 14:43:36
Hat geklappt, vielen Dank!!
Das freut mich.

Bitte noch das Thema als geloest markieren. ;-)
Use ed once in a while!

jmar83
Beiträge: 962
Registriert: 20.06.2013 20:20:15
Wohnort: CH
Kontaktdaten:

Re: sed: Nicht beendeter s-Befehl?

Beitrag von jmar83 » 05.08.2019 23:33:00

Gar nicht gewusst, dass es sowas gibt... allerdings sehe ich dazu unten (Thread-Einstellungen) keine enstsprechende Option dazu?

Danke fürs Feedback.
Freundliche Grüsse, Jan

Benutzeravatar
Meillo
Moderator
Beiträge: 8813
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: sed: Nicht beendeter s-Befehl?

Beitrag von Meillo » 06.08.2019 08:43:58

jmar83 hat geschrieben: ↑ zum Beitrag ↑
05.08.2019 23:33:00
Gar nicht gewusst, dass es sowas gibt... allerdings sehe ich dazu unten (Thread-Einstellungen) keine enstsprechende Option dazu?
Du musst dazu deinen Startpost editieren und im Titel ein ``[geloest]'' ergaenzen.
Use ed once in a while!

jmar83
Beiträge: 962
Registriert: 20.06.2013 20:20:15
Wohnort: CH
Kontaktdaten:

Re: sed: Nicht beendeter s-Befehl? [geloest]

Beitrag von jmar83 » 06.08.2019 09:10:55

erledigt, vielen dank.
Freundliche Grüsse, Jan

Antworten