我对下面的脚本有一些麻烦。
proc checkUser {userip} {
set search "show users | include "
set search_cmd [concat $search $userip]
exp_send "$search_cmd\r"
expect {
-re "Vi.*" {
set oui "uei.opennms.org/services/passiveServiceStatus"
set host "localhost"
set iface "--interface $userip"
set service "--service Test"
set parm1 "--parm 'passiveNodeLabel [getNodeName $userip]'"
set parm2 "--parm 'passiveIpAddr $userip'"
set parm3 "--parm 'passiveServiceName Test'"
set parm4 "--parm 'passiveStatus Up'"
send_user [ exec perl /opt/opennms/bin/send-event.pl $oui,$host,$iface,$service,$parm1,$parm2,$parm3,$parm4 ]
#send_user [ exec [pwd]]
}
}
}
整个 Expect 脚本执行没有错误,但是调用的 perl 脚本似乎没有执行,但是当我在 bash 中使用相同的参数运行 perl 脚本时,它会执行它应该做的事情。
这是从 Expect 中调用 perl 脚本的正确方法吗?
提前致谢。