expect程式設計

2021-08-03 23:31:14 字數 899 閱讀 3878

expect是unix系統中用來進行自動化控制和測試的軟體工具,由don libes製作,作為tcl指令碼語言的乙個擴充套件,應用在互動式軟體中如telnet,ftp,passwd,fsck,rlogin,tip,ssh等等。該工具利用unix偽終端包裝其子程序,允許任意程式通過終端接入進行自動化控制;也可利用tk工具,將互動程式包裝在x11的圖形使用者介面中。

用expect語言主要是為了對集群進行管理,包括自動重啟,刪除,建立資料夾等。

首先進行安裝expect工具

sudo apt-get install tcl tk expect
指令碼以.exp結尾,用expect *.exp命令來執行

expect *.exp
下面是幾個例子:

scp指令碼:

#!/usr/bin/expect -f

#設定變數password為hadoop

set password hadoop

#編寫for迴圈i從1到9

for

rm指令碼

#!/usr/bin/expect -f

set password hadoop

for

sudo指令碼

#!/usr/bin/expect -f

set password hadoop

for

需要轉義的字元

\ 需轉義為 \\

\} 需轉義為 \}

[ 需轉義為 \[

$ 需轉義為 \\

\$` 需轉義為 \`

" 需轉義為 \\

\"

expect 程式設計

一 expect介紹expect 是乙個免費的程式設計工具,用來實現自動的互動式任務,而無需人為干預。說白了,expect 就是一套用來實現自動互動功能的軟體。需要安裝 yum install y expect 二 expect基礎 在使用 expect 時,基本上都是和以下四個命令打交道 命令 作...

七 shell程式設計 expect

1.expect 前言觀察ssh登入的互動現象,有些程式難以避免的需要互動。如何解決指令碼與程式的互動問題。expert就是專門解決指令碼和程式之間的互動問題 語法 spawn expect的內部命令,啟動乙個shell程式 expect 期望哪些內容 yes no 就send傳送yes。r表示回車...

SHell程式設計之Expect免互動

1 expect是建立在tcl基礎上的乙個工具,expect是用來進行自動化控制和測試的工具。主要解決shell指令碼中不可互動的問題。對於大規模的linux運維很有幫助。2 在linux運維和開發中,我們經常需要遠端登入伺服器進行操作,登入的過程是乙個互動到的過程,可能會需要輸入yes no pa...