使用expect指令碼SCP拷貝檔案
使用expect指令碼SCP拷貝檔案,無需輸入密碼,無需使用金鑰對
#!/usr/bin/expect -f
foreach ip {
192.168.10.10} {
spawn scp $ip:/home/zwl_test/my_portal.sh /home/zwl_test/
set timeout 300
expect {
#"continue connecting" {send "yes\r";exp_continue}
"Password:" {send "xxxxxxxx\n"}
}
expect eof
}
注意事項(CENTOS7.6測試也沒問題)yum -y install expect
vi expect.sh
#!/usr/bin/expect -f
foreach ip { --這裡foreach ip { 中間都是有空格的,然後必須換行
192.168.1.100} { --這裡兩個} { 之間必須要有空格,之後必須換行,否則會報錯
spawn scp /root/install.log $ip:/BAK/bak/
expect { --這裡必須換行,否則無法執行指令碼成功
"password:" {send "******\n"}
}
expect eof
}
OK,以上的都按我寫的格式來都寫好之後, 在執行指令碼的時候,必須./expect.sh這樣執行,執行前chmod u+x expect.sh
千萬不能用sh -x 或者sh 這種,這樣執行不了的。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28371090/viewspace-766612/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Linux使用expect實現遠端拷貝檔案Linux
- linux採用scp命令拷貝檔案到本地,拷貝本地檔案到遠端伺服器Linux伺服器
- ssh自動登陸和scp自動拷貝檔案
- Linux 拷貝命令之高階拷貝scp命令詳解Linux
- expect+scp傳輸檔案發現檔案丟失
- IOCP 檔案拷貝
- Rman的映象拷貝指令碼指令碼
- Linux遠端拷貝scp命令Linux
- IO流-檔案拷貝
- 檔案內容拷貝
- 使用UltraEdit 拷貝二進位制檔案
- Golang命令列拷貝檔案Golang命令列
- 使用shell指令碼及asm cp或RMAN copy批量將資料檔案從ASM拷貝到檔案系統指令碼ASM
- asm拷貝檔案到檔案系統ASM
- 自己寫的unix檔案拷貝指令cp實現函式函式
- [java IO流]之檔案拷貝Java
- c語言拷貝檔案程式C語言
- Python基礎 - 檔案拷貝Python
- 二進位制檔案拷貝
- linux-scp 遠端拷貝報錯原因Linux
- SCP和Rsync遠端拷貝的幾個技巧
- 手工ftp拷貝歸檔及指令碼自動恢復Standby方式FTP指令碼
- 使用expect執行動態指令碼指令碼
- 淺拷貝與深拷貝程式碼(javascript)JavaScript
- 檔案操作(二進位制拷貝)
- linux 帶路徑拷貝檔案Linux
- 利用SSH信任關係使用scp在後臺執行datafile的拷貝
- 資料檔案拷貝檔案頭驗證錯誤
- Java IO 流之拷貝(複製)檔案Java
- linux parallel rsync 拷貝N多檔案LinuxParallel
- 零拷貝讀取檔案成 Go 物件Go物件
- scp後臺靜默執行(使用expect自動輸入密碼)密碼
- 使用RMAN在ASM和檔案系統之間拷貝資料ASM
- Java實現檔案拷貝的4種方法.Java
- 11g中節點間拷貝檔案
- 【ASM學習】從ASM拷貝檔案的方法ASM
- 由於拷貝的檔案太大,不可能一直開著SHELL,所以讓SCP後臺執行 .
- vue深拷貝淺拷貝Vue