expect時用與提供自動互動的工具。比如如果想要用ssh登陸伺服器,每次都輸入密碼你覺得麻煩,那你就可以使用expect來做自動互動,這樣的話就不用每次都輸入密碼了。
先看例子:
#!/usr/bin/expect
#set timeout 20 #設定超時時間
spawn ssh [email protected]
"*password:
"send
"123\r"#
expect "*#"
interact
解釋:1.#!/usr/bin/expect :需要先安裝軟體,然後來說明用expect來執行
2.spawn ssh [email protected] :spawn是進入expect環境後才可以執行的expect內部命令,用來執行它後面的命令。
3.expect "*password:" :也是expect的內部命令,用來解惑關鍵的字串,如果有,就會立即返回下面設定的內容,如果沒有就看是否設定了超時時間。
4.send "123\r":這時執行互動式動作,與手工輸入密碼等效,在expect截獲關鍵字之後,它就會輸入send後面的內容。
5.interact :執行完畢後把持互動狀態,把控制台,這時候就可以進行你想要進行的操作了。如果沒有這一句,在登陸完成之後就會退出,而不是留在遠端終端上。
今天突然想起了expect,所以就重新看了一下,希望對你有幫助。
Linux expect 介紹和用法
expect是乙個自動化互動套件,主要應用於執行命令和程式時,系統以互動形式要求輸入指定字串,實現互動通訊。expect自動互動流程 spawn啟動指定程序 expect獲取指定關鍵字 send向指定程式傳送指定字元 執行完成退出.注意該指令碼能夠執行的前提是安裝了expect yum instal...
Linux expect介紹和用法
expect工具主要用於在linux上免互動實行程式。yum install expect y expect常用選項 c 從命令列執行expect指令碼,預設expect是互動地執行的 expect常用命令 spawn 互動程式開始後面跟命令或者指定程式 expect 獲取匹配資訊匹配成功則執行ex...
C 基礎 Func和Action的介紹及其用法
func是一種委託,這是在3.5裡面新增的,2.0裡面我們使用委託是用delegate,func位於system.core命名空間下,使用委託可以提公升效率,例如在反射中使用就可以彌補反射所損失的效能。action和func的功能是一樣的,只是action沒有返型別,func 有引數,有返回型別 a...