linux – 期望脚本期望错过发送字符串延迟问题
发布时间:2021-03-18 08:27:50 所属栏目:Linux 来源:网络整理
导读:我编写了active.ksh脚本(基于expect),以便自动登录某些Solaris机器并执行hostname命令(登录虚拟IP以验证哪个主机名是活动机器 – 我有两个集群solaris机器) 问题在于期待; expect发送密码字符串(pass123)并且它错过了密码问题,它仍然等待密码. 实际上密码后
我编写了active.ksh脚本(基于expect),以便自动登录某些Solaris机器并执行hostname命令(登录虚拟IP以验证哪个主机名是活动机器 – 我有两个集群solaris机器) 问题在于期待; expect发送密码字符串(pass123)并且它错过了密码问题,它仍然等待密码. 实际上密码后输入了密码(pass123) 问题的例子 ./active.ksh spawn ssh 10.10.18.61 sh: /usr/local/bin/stty: not found This computer system,including all related equipment,networks and network devices (specifically including Internet access),is provided only for authorized uss Password: * my remark - pass123 string was missed the Password Question pass123 Password: 剧本 #!/bin/ksh VIP_ADDRESS=10.10.18.61 expect_for_verify_which_active_machine=`cat << EOF set timeout -1 spawn ssh $VIP_ADDRESS expect { ")?" { send "yesr" ; exp_continue } Password: {send "pass123r"} } expect > {send "hostnamer"} expect > {send exitr} expect eof EOF` expect -c "$expect_for_verify_which_active_machine" 正确结果的例子 ./active.ksh [Friday,February 24,2012 2:32:06 PM IST] INFO Verify which is active SMU machine spawn ssh 10.10.18.61 sh: /usr/local/bin/stty: not found This computer system,networks and network devices (specifically including Internet access),is provided only for authorized uss yes Password: Last login: Fri Feb 24 14:32:06 2012 from smu1a This computer system,is provided only for authorized uss solaris1:/ ROOT > hostname solaris1 solaris1:/ ROOT > exit logout Connection to 10.10.18.61 closed. 解决方法如果您在登录期间监视字符串,您将希望避免使用“密码:”,您会发现它并不总是大写.将你的期望改为-re“(.*)assword:”或“assword:”往往会更有效地抓住这条线. 如果你发现时间仍然太快,你可以睡一觉;在你发送之前 这就是我用来期待的东西 expect { "(yes/no)?" { send "yesn" } "passphrase" { send "r" } -re "(.*)assword:" { sleep 1; send -- "passwordr" } -re $prompt { return } timeout { puts "un-able to login: timeoutn"; return } eof { puts "Closedn" ; return } } (编辑:湘西站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 为什么Linux内核一直用Unsigned Long来取代指针
- linux 网络下载命令 wget 使用技巧
- Linux / Multipath不使用所有路径,也不会使用队列长度path_
- 有用分期怎么分期购物 有用分期申请分期购物方法图文教程
- 秒进App Store!完美解决App Store打不开
- Samba / CIFS Ubuntu 14.04挂载错误(112)
- 都说Linux是吃内存的主可你知道具体是哪些进程吃掉了吗?
- 安卓5.0有什么特点 安卓5.0新特性介绍(一)
- 转载-centos网络配置(手动设置,自动获取)的2种方法
- Mount NAS Storage in Linux Overview 转载
站长推荐
热点阅读