1.expect
前言觀察ssh登入的互動現象,有些程式難以避免的需要互動。如何解決指令碼與程式的互動問題。
expert就是專門解決指令碼和程式之間的互動問題
語法
spawn expect的內部命令,啟動乙個shell程式
expect 期望哪些內容
yes/no 就send傳送yes。\r表示回車
password 就send傳送centos
exp_continue 跳過迴圈,繼續下一條語句
interact 允許使用者互動(實際不一定用上這個)
安裝yum install -y expect tcl tclx tcl-devel
2.示例1
通過expect解決ssh互動問題
通過expect編寫指令碼
試用,不能使用bash,因為是用expect語言寫的
試用,成功
3.實戰2
公鑰推送
準備工作:安裝expect,準備公鑰
通過expect進行互動
優化指令碼
把ping和expect結合
兩種方法
①/usr/bin/expect /root/ssh.exp 這要是叫bash執行到這裡後用/usr/bin/expect開啟ssh.exp檔案繼續執行
②/usr/bin/expect <
內容eof 這是等於把內容以文件的形式讓/usr/bin/expect執行
一般都用第一種,因為這樣美觀且不易混淆
SHell程式設計之Expect免互動
1 expect是建立在tcl基礎上的乙個工具,expect是用來進行自動化控制和測試的工具。主要解決shell指令碼中不可互動的問題。對於大規模的linux運維很有幫助。2 在linux運維和開發中,我們經常需要遠端登入伺服器進行操作,登入的過程是乙個互動到的過程,可能會需要輸入yes no pa...
Shell 程式設計之Expect免互動
四 expect 執行方式 1 expect是建立在tcl基礎上的乙個工具,expect是用來進行自動化控制和測試的工具。主要解決shell指令碼中不可互動的問題。對於大規模的linux運維很有幫助。2 在linux運維和開發中,我們經常需要遠端登入伺服器進行操作,登入的過程是乙個互動到的過程,可能...
expect程式設計
expect是unix系統中用來進行自動化控制和測試的軟體工具,由don libes製作,作為tcl指令碼語言的乙個擴充套件,應用在互動式軟體中如telnet,ftp,passwd,fsck,rlogin,tip,ssh等等。該工具利用unix偽終端包裝其子程序,允許任意程式通過終端接入進行自動化控...