想要将双引号作为参数传递

Want to pass double quote as argument

#!/usr/bin/expect -f

set arguments [lrange $argv 2 end]
expect "hello"
send "$arguments\r\n"

正在尝试将双引号作为参数传递给脚本。以上未按预期工作。

我调用脚本的方式是

./ExpectScript.sh \" 1 \" 2 3 4

输出是

hello
{"} 2 3 4

预期输出为

hello
" 2 3 4

lrange return 列表。然后你打印列表。如果你想要字符串,你可以使用 join.

set arguments [join [lrange $argv 2 end]]