expect用於自動執行人機交互
#!/usr/bin/expect
set timeout 30
spawn ssh -l username 192.168.1.1 spawn + 命令,進入expect環境中
expect "passwd:"
send "111111\r"
interact 執行完成後把控制權交給控制檯
expect{
-re -password:" {exp_send -word\r"; exp_continue}
-re -psec#"{}
}
expect -rc 表示使用正則表達式
send_user 只是顯示用戶發送的消息,類似於echo
expect_user 根據用戶的輸入進行匹配
set 變量名 變量值
put $變量名
eof 文件的結束符;FTP傳輸停止
用expect不斷地鏈接服務器
spawn ftp
while{1}{
expect "ftp>"
send "0202.199.248.11r"
expect{
"connect" break
"refused" {sleep 10}
}
}