在本机A中执行expect脚本:ssh到B,在B机器上从A机器scp文件到B
在本机A中执行expect脚本ru.sh,可以做到 "从A ssh到B,在B机器上从A机器scp文件到B"
OAM/tools/Dispatch_EURU/ru.sh内容如下:
#!/usr/bin/expect set timeout 15 set local_file [lindex $argv 0] set ip [lindex $argv 1] set remote_path [lindex $argv 2] set password "12345678" set scp_result "1" spawn ssh -o StrictHostKeyChecking=no $ip expect { "password:" { send "$password\r" expect { "root@" { #send "scp sftpuser2@192.168.30.1:${local_file} ${remote_path}\r" send "scp -o StrictHostKeyChecking=no sftpuser2@192.168.30.1:${local_file} ${remote_path}\r" } } expect { "yes/no" { send "yes\r";exp_continue } "y/n" { send "y\r";exp_continue } "password:" { send "Sftpuser2.password\r"; exp_continue} "100%" {set scp_result "0"} } expect { "root@" { send "exit\r" } } } } expect eof exit "$scp_result"
./ru.sh /usr/local/xxxx/repository_run/5.1.3.255.xxxx.260131_beta/OAM/tools/Dispatch_EURU/ru_1.sh 192.168.30.207 /tmp/ ; echo $?


浙公网安备 33010602011771号