expect Strings

OP #4082366
Lesenswert?

Hallo Zusammen,
vielleicht kennt sich ja jemand etwas mit expect aus.

ich habe ein Script geschrieben, welches auch soweit auch funktioniert, 
allerdings schaffe ich es nicht Strings zu verarbeiten.

Aufruf:

./script.exp <user> <pass> <description>
./script.exp hans te!st "Hans Meier"

Script:
Versuch 1
send "add [lindex $argv 0] [lindex $argv 1] \"[lindex $argv 2]\"\r"

Versuch 2
send "add [lindex $argv 0] [lindex $argv 1] '"[lindex $argv 2]'\r"

Ich benötige am Ende einen Sring der so:
add hans te!st "Hans Meier" aussieht!

Egal was ich probiert habe,  ich erhalte immer so etwas:
add hans te!st ""

Der Inhalt aus [lindex $argv 2] wird als nicht übernommen, warum nicht?

Hat jemand eine Idee?

Danke!
Gast #4082390
Lesenswert?

Das Beispiel
1
send "add [lindex $argv 0] [lindex $argv 1] \"[lindex $argv 2]\"\r"
sieht gut aus.
Habe das "send" durch ein "puts" ersetzt:
1
user@debian:~/scripts/test$ ./script.exp hans 'te!st' "Hans Meier"
2
add hans te!st "Hans Meier"
Scheint also zu funktionieren.

Wie sieht dein gesamtes Script und der expect Aufruf aus?
OP #4082417
Lesenswert?

Danke fürs testen!

...hast recht, das funktioniert so wie ich vermutet und Du bestätigt 
hast.

Das orginale Script ist etwas länger und verwendet noch ein paar 
Parameter mehr.

Bin mit den Parametern verrutscht, deswegen stand da ein leerer Wert.

Wald => Bäume, eigener Code und Betriebsblindheit!


Danke nochmal!

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren