expect命令简洁实用

1 expect 简介linux

expect 是用来进行自动化控制和测试的工具。主要是和交互式软件telnet ftp passwd fsck rlogin ssh tip 等进行自动化的交互。对于大规模的linux 运维颇有帮助。expect sourceforge

2 expect最重要的四个命令运维

send:向进程发送字符串,用于模拟用户的输入。注意必定要加\r回车
    expect:从进程接收字符串
    spawn:启动进程(由spawn启动的进程的输出能够被expect所捕获)
    interact:用户交互

3 实例,ssh登录交换机
#!/usr/bin/expect
set timeout -1
spawn ssh username@192.168.1.1 -p 22
expect {
"assword:" {send "mypassword\r";}
"yes/no" {send "yes\r";exp_continue}
}
expect "
>"
send "su\r"
expect {
"Password:" {send "superpassword\r"}
"position." {}
"
3-MANAGE" {}
}
interact
#exp_continue表示循环ssh

相关文章
相关标签/搜索