转载 expectspawn、linuxexpect用法小记 expect spawn ssh
脚本代码如下:
##############################################
#!/usr/bin/expect
set timeout 30
spawn ssh -l username 192.168.1.1
expect "password:"
send "ispassr"
interact
##############################################
1. [#!/usr/bin/expect]
这一行告诉操作系统脚本里的代码使用那一个shell来执行。这里的expect其实和linux下的bash、windows下的cmd是一类东西。
注意:这一行需要在脚本的第一行。
2. [set timeout 30]
基本上认识英文的都知道这是设置超时时间的,现在你只要记住他的计时单位是:秒
3. [spawn ssh -l username 192.168.1.1]
spawn是进入expect环境后才可以执行的expect内部命令,如果没有装expect或者直接在默认的SHELL下执行是找不到spawn命令的。所以不要用 “whichspawn“之类的命令去找spawn命令。好比windows里的dir就是一个内部命令,这个命令由shell自带,你无法找到一个dir.com或 dir.exe 的可执行文件。
它主要的功能是给ssh运行进程加个壳,用来传递交互指令。
4. [expect "password:"]
这里的expect也是expect的一个内部命令,有点晕吧,expect的shell命令和内部命令是一样的,但不是一个功能,习惯就好了。这个命令的意思是判断上次输出结果里是否包含“password:”的字符串,如果有则立即返回,否则就等待一段时间后返回,这里等待时长就是前面设置的30秒
5. [send "ispassr"]
这里就是执行交互动作,与手工输入密码的动作等效。
温馨提示: 命令字符串结尾别忘记加上“r”,如果出现异常等待的状态可以核查一下。
6. [interact]
执行完成后保持交互状态,把控制权交给控制台,这个时候就可以手工操作了。如果没有这一句登录完成后会退出,而不是留在远程终端上。如果你只是登录过去执行
#!/usr/bin/expect #注意安装的路径,不确定 whereis expect 一下
# Change a login shell to bash
set user [lindex $argv 0]
spawn bash $user
expect "]:"
send "/bin/bash "
expect eof
exit
使用expect实现ssh自动输入密码,从而自动登陆Linux
用以下命令执行:
expect -f expect-ssh.exp <username><password> <hostnameor ip>
注意,在这个expect-ssh.exp中,connect函数主要负责登陆,代码的最后两行,两个send是登陆上去后,执行的命令,注意最后一定要执行一个exit,否则会导致expect执行完成后还留在远程主机上。
这里是expect-ssh.exp的源码:procusage{}{
putsstderr"usage:$::argv0usernamepasswordipaddress"
exit1
}
procconnect{pass}{
expect{
"(yes/no)?"{
send"yesn"
expect"*password:"{
send"$passn"
expect{
"*#"{
return0
}
}
}
}
"*password:"{
send"$passn"
expect{
"*#"{
return0
}
}
}
}
return1
}
if{$argc!=3}{usage}
setusername[lindex$argv0]
setpassword[lindex$argv1]
sethostip[lindex$argv2]
spawnssh${username}@${hostip}
if{[connect$password]}{
exit1
}
send"rm-f/root/testeric;rm-fpattern_filen"
send"exitn"
expecteof
更多阅读
转载 先天、后天八卦口诀、代数、方位、属性等等 先天八卦与后天八卦
原文地址:先天、后天八卦口诀、代数、方位、属性等等作者:易学交流平台八卦歌诀 先天八卦:“乾三连,坤六断,震仰盂,艮覆碗,离中虚,坎中满,兑上缺,巽下断。” 后天八卦:
转载 04、05、06年超级女声+09年快乐女声全国十强排名 2006超级女声排名
收了原文地址:04、05、06年超级女声+09年快乐女声全国十强排名作者:job112504年至09年历届超级女生排名如下:04年超级女生全国十强。。第一名—安又琪第二名—王媞第三名—张含韵
转载 关于aspxTreeList的用法 dev treelist
原文地址:关于aspxTreeList的用法作者:叶枫要求:根据ID来控制ImageButton的显示和隐藏(所有数据加载时进行控制).aspx页面<dxwtl:ASPxTreeList ID="treeListSysModule"runat="server" KeyFieldName="ID"ParentFieldName="PID" Width=
转载 纸老虎、癞皮狗、寄生虫、癞蛤蟆等分别比喻什么人 电竞癞皮狗
原文地址:纸老虎、癞皮狗、寄生虫、癞蛤蟆等分别比喻什么人作者:小荷尖尖变色龙 政治上善于变化和伪装的人白骨精 极为阴险毒辣的女人白眼狼 忘恩负义的人饭桶 只会吃饭不会做事的人太上皇 在幕后操纵、掌握实权的人笑面虎 外貌装得善
转载 香港、美国、新加坡上市条件等介绍全 香港上市条件
原文地址:香港、美国、新加坡上市条件等介绍(全)作者:老断选择一:香港上市条件,流程,费用一、中国公司到香港上市的条件(一)主板上市的要求主场的目的:目的众多,包括为较大型、基础较佳以及具有盈利纪录的公司筹集资金。主线业务:并无有关具