gutefrage.net, die Ratgeber Community
Login   |  Registrieren   |  Forum |  Richtlinien & FAQ

Antworten auf Fragen von a1exander

bash: Escapen in Scripten

beantwortet von pjakobs am 8. Dezember 2007 15:00
0x
Die Antwort ist hilfreich? Dann klick mich!

hmm...

Schaut für mich weniger nach einem escaping Problem aus, sondern so als ob Xdialog die ganze Variable $DOPT als einen Parameter sähe... Ich hab auch auf die Schnelle kein Beispiel gefunden, wo Xdialog mit der Optionsliste in einer Variable genutzt worden wäre....

pj

Kommentar von 25a573f3d9e44f654069da1aa41e63edsmalla1exander am 8. Dezember 2007 17:58

Die Optionsliste wird ncht, wie da angegeben, einfach in die Variable geschrieben, sondern aus diversen Dateien extrahiert und dynamisch zusammengesetzt. Das hier war nur zur Vereinfachung...

Kommentar von pjakobs am 8. Dezember 2007 18:01

und Du übergibst sie wie?

Dann vermutlich doch wieder in einer Shell Variablen, oder?

Kommentar von 25a573f3d9e44f654069da1aa41e63edsmalla1exander am 8. Dezember 2007 18:45

Übergeben tue ich die so wie oben dargestellt, nur DOPT wird nicht direkt gesetzt sondern vorher erst zusammengebaut.

Mittlerweile habe ich die Lösung aber gefunden: DOPT="1 \"Test 1\" 1 2 \"Test2\" 1" && RESULT=$(eval Xdialog -checklist Test 0 0 5 $DOPT) ... eval war das fehlende Schlüsselwort...

Kommentar von pjakobs am 8. Dezember 2007 19:08

cool, da lern ich auch wieder was ;)

Aber da lag ich ja nicht ganz so falsch. Die shell hat den ganzen Inhalt von $DOPT als einen String an Xdialog übergeben und eval sorgt dafür, daß es erst ausgerollt wird.

Kommentar von pjakobs am 8. Dezember 2007 19:08

cool, da lern ich auch wieder was ;)

Aber da lag ich ja nicht ganz so falsch. Die shell hat den ganzen Inhalt von $DOPT als einen String an Xdialog übergeben und eval sorgt dafür, daß es erst ausgerollt wird.



Die unter gutefrage.net angebotenen Dienste und Ratgeber Inhalte werden nicht geprüft. Die Richtigkeit der Inhalte wird nicht gewährleistet. Bitte lesen Sie hierzu auch unsere Rechtlichen Hinweise.