有时候我们使用命令行进行交互时,不想频繁的做一些重复的事情,例如:每次ssh远程登录时都需要输入密码。使用spawn和expect可以自动完成一些交互。
一个自动输入密码的简单脚本
#!/usr/bin/expect
set login_name "user name"
set login_host "hosts ip"
set password "guess what"
spawn ssh $login_name@$login_host
expect {
"(yes/no)" { send "yes
"; exp_continue }
"password:" { send "$password
" }
}
#expect $login_name@* {send "ls
" } ;
interact
| | | | |
有时候我们使用命令行进行交互时,不想频繁的做一些重复的事情,例如:每次ssh远程登录时都需要输入密码。使用spawn和expect可以自动完成一些交互。 一个自动输入密码的简单脚本 #!/usr/bin/expect set login_name "user name" set login_host "hosts ip" set password "guess what" spawn ssh $login_name@$login_host expect { "(yes/no)" { send "yes
"; exp_continue } "password:" { send "$password
" } } #expect $login_name@* {send "ls
" } ; interact | | | | |
有时候我们使用命令行进行交互时,不想频繁的做一些重复的事情,例如:每次ssh远程登录时都需要输入密码。使用spawn和expect可以自动完成一些交互。 一个自动输入密码的简单脚本 #!/usr/bin/expect set login_name "user name" set login_host "hosts ip" set password "guess what" spawn ssh $login_name@$login_host expect { "(yes/no)" { send "yes
"; exp_continue } "password:" { send "$password
" } } #expect $login_name@* {send "ls
" } ; interact | | | | |