标签:锐捷 Please send tcl expect Linux input 交互
原文链接:http://www.cnblogs.com/van9ogh/archive/2011/11/02/2446360.html本文不是讲解怎样安装锐捷的,而是在锐捷安装好以后,实现自动拨号。
要实现自动输入用户名,密码等信息,我们需要安装expect工具,它是linux上帮助管理员编写
自动交互式脚本的强大工具,另外由于expect需要tcl语言支持,因此需要安装tcl。
下载:
tcl:http://www.tcl.tk/software/tcltk/download.html
expect:http://sourceforge.net/projects/expect/files/
以上两个包都是源码包,老规矩,我们先:
tcl:
#cd tcl.xxxx
#cd unix
#./configure
#make
#make install
expect:
#cd expect.xxx
#./configure
#make
#make install
安装好以后我们开始写脚本:
ruijie.sh
##########################################################
#!/usr/local/bin/expect #你所安装的expect可执行文件,这个脚本使用expect执行的。
spawn /usr/bin/myxrgsu #给你的锐捷可执行文件加个交互式的"壳"
expect "Please input your user name:" #如果expect发现myxrgsu输出的是Please input your user name:
send "12345678\r" #此时它就send用户名,这里假设用户名为12345678
expect "Please input your password:" #同理,如果这个壳发现myxrgsu输出的是Please input your password:
send "000000\r" #那么就发送密码,这里是000000
expect "Use DHCP,1-Use,0-UnUse(Default: 0):"
send "0\r"
expect "Use default auth parameter,0-Use 1-UnUse(Default: 0):"
send "0\r"
#expect "Please input 'unauth' to LogOff:"
#set timeout 36000 #超时36000认为无效
interact #进行交互,即将控制权交给锐捷程序
############################################################
其实,我们就是在程序上面加了一个壳,然后解析程序会有那些输出,当程序输出与expect匹配时
那么程序就会接收到我的send信息,最后当完成我所要自动输入的过程后,我就把壳给卸了,交还控制权.
转载于:https://www.cnblogs.com/van9ogh/archive/2011/11/02/2446360.html
标签:锐捷,Please,send,tcl,expect,Linux,input,交互 来源: https://blog.csdn.net/weixin_30210651/article/details/96602421
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。