我有一个 bash 脚本,它像这样调用 Expect 脚本
$SCRIPTS_DIRECTORY/my_expect_script.sh $my_bash_array
看起来我可以传递一个变量并使用它。
对于这个例子,变量似乎是在[lindex $argv 0]
.
从 bash 来看,它将是一堆值,例如1 2 3 4 5
.
我试图弄清楚如何使用expect来获取这个变量,将其保存到一个数组中,然后循环遍历该数组以一次吐出多个命令。
所以我的输出应该是这样的
send command 1 \r
send command 2 \r
等等,直到到达数组末尾。
我以为我会像这样分配它
array set myArray [lindex $argv 0]
但看来我错了。
有人有什么好的地方可以解释一下从 bash 到更好的期望,或者知道如何做到这一点吗?我认为它相对简单,但期望在某些方面对我来说非常不确定。
示例.sh
my_array=(1 2 3 4 5)
expect sample.exp "${my_array[@]}"
样本.exp
foreach arg $argv {
puts "arg : $arg"
}
Output :
dinesh@mypc:~$ ./sample.sh
arg : 1
arg : 2
arg : 3
arg : 4
arg : 5
dinesh@mypc:~$
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)