期待脚本变量赋值

时间:2015-10-16 21:07:47

标签: unix expect

#!/usr/bin/expect
set NUM [exec some command to ssh to a remote machine and return a number]
puts $NUM
while { $NUM != "0" } {
        set NUM [exec some command to ssh to a remote machine and return a number]
        sleep 5
}

以上是我的代码。它运行在一个期望脚本中。我想将变量NUM分配给ssh到远程机器的某个命令并返回一个数字(当我输入终端时,该命令将返回一个数字)。 我收到了错误:

100
while executing
"exec some command to ssh to a remote machine and return a number "qstat | wc -l""
invoked from within
"set JOBS [exec some command to ssh to a remote machine and return a number "qstat | wc -l"]"

问题是我得到了这个号码,但是我没有将这个号码分配给变量NUM

任何人都可以帮我调试这件作品吗?感谢

1 个答案:

答案 0 :(得分:0)

Yon不能这样做,因为它是一个期望脚本,最好的方法是将期望脚本包装在一个bash脚本中。见Run expect command inside while loop in shell script