shell 中scp密碼輸入 --expect


這里必須先安裝:
yum install expect -y

expect是一種自動交互語言,能實現在shell腳本中為scp和ssh等自動輸入密碼自動登錄。
下面給出scp和ssh的使用示例:

1、scp
[root@BS-WORKERMAN-NFS package]# cat scp.sh 
#!/bin/bash
src=/package
dsc=/root/
for i in {4,5,6}
do
expect -c "
spawn scp -r $src/scp.sh root@10.20.18.2$i:$dsc
expect {
\"*assword\" {set timeout 300; send \"game2017\.\/\r\";}
\"yes/no\" {send \"yes\r\"; exp_continue;}
}
expect eof" 
done
2、ssh
#!/bin/bash
expect -c "
spawn ssh root@192.168.1.204 \"ls;\"
expect {
    \"*assword\" {set timeout 300; send \"password\r\";}
    \"yes/no\" {send \"yes\r\"; exp_continue;}
      }
expect eof"


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM