remoteIp=IP
remoteUser=用户名
remotePw=密码
function download(){
? remoteFile=$1
? localDir=$2
? expect << EOF
? ? set timeout 1200;
? ? spawn scp -r -p $remoteUser@$remoteIp:”$remoteFile” “$localDir”
? ? expect{
? ? ? “*yes/no*” {send “yes\n”;exp_continue}
? ? ? “*Permission denied*” {exit 1}
? ? ? “*password*” {send “$remotePw\n”;exp_continue}
? ? ? “*Killed by signal 1” {exit 1}
? ? }
EOF
}
fucntion remoteCmd(){
? cmd=$1
? expect << EOF
? ? set timeout 1200;
? ? spawn ssh $remoteUser@$remoteIp
? ? expect{
? ? ? “*yes/no*” {send “yes\n”;exp_continue}
? ? ? “*Permission denied*” {exit 1}
? ? ? “*password*” {send “$remotePw\n”;exp_continue}
? ? ? “*\$ ” {send “\n”}
? ? }
? ? expect “*\$ ” {send “$cmd\n”}
? ? expect “*\$ ” {send “exit\n”}
EOF
}
remoteCmd “ls -l”