Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix loadconfig: Failed on options containing spaces and other special characters #1870

Merged
merged 1 commit into from
Jan 6, 2022

Conversation

yankee42
Copy link
Contributor

Immer wieder lese ich im Forum Logs mit dem Fehler "/var/www/html/openWB/loadconfig.sh: Zeile 8: ...". Zu letzt hier. Auch ich habe solche Ausgaben in meiner Logdatei, weil ich ein SmartHome-Gerät mit dem Namen "shelly 1" habe. Geht nicht weil Leerzeichen.

Remember: quote everything where you do not require the shell to perform word splitting and wildcard expansion

Beispiel

openwb.conf:

my_key=.Body.Data.Site.P_PV | if . == null then 0 else . end

Alt:

$ source loadconfig.sh ; printenv | grep -P '^my_key'
bash: export: `|': not a valid identifier
bash: export: `.': not a valid identifier
bash: export: `==': not a valid identifier
bash: export: `0': not a valid identifier
bash: export: `.': not a valid identifier

Neu:

$ source loadconfig.sh ; printenv | grep -P '^my_key'
my_key=.Body.Data.Site.P_PV | if . == null then 0 else . end

@benderl
Copy link
Collaborator

benderl commented Jan 3, 2022

Einige Einträge in der openwb.conf sind in single quotes. Nach dem Merge könnten diese doch entfallen, wenn ich das richtig verstehe. Oder müssten noch sämtliche Skripte kontrolliert werden?

@yankee42
Copy link
Contributor Author

yankee42 commented Jan 3, 2022

Einige Einträge in der openwb.conf sind in single quotes. Nach dem Merge könnten diese doch entfallen, wenn ich das richtig verstehe. Oder müssten noch sämtliche Skripte kontrolliert werden?

Ja und ja ;-). Also nach diesem PR erfüllen haben die single quotes keine sinnvolle Funktion mehr und könnten weg. Wenn das passiert ist könnte das Script noch weiter vereinfacht werden. Dafür bräuchte man ein update-Script, welches die single-quotes entfernt (sowas in Richtung von sed "s/^([^=]+=)'(.*)'$/\1\2/" ... könnte da tun und dann müsste man auch noch sicherstellen, dass nicht wieder irgendwelche Scripte die single-Quotes wieder ergänzen.

Es schadet aber auch nicht das erstmal so zu lassen. Also gut, bis darauf dass es in Vergessenheit geraten könnte...

@yankee42 yankee42 force-pushed the fix-loadconfig-missing-quotes branch from 83445ea to 7a82788 Compare January 6, 2022 18:34
@benderl benderl merged commit 2c1ced9 into snaptec:master Jan 6, 2022
@yankee42 yankee42 deleted the fix-loadconfig-missing-quotes branch January 6, 2022 19:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants