Linux expect介紹和用法


expect時用與提供自動交互的工具。比如如果想要用ssh登陸服務器,每次都輸入密碼你覺得麻煩,那你就可以使用expect來做自動交互,這樣的話就不用每次都輸入密碼了。

先看例子:

#!/usr/bin/expect
#set timeout 20 #設置超時時間
spawn ssh root@192.168.43.131 expect "*password:" send "123\r" # expect "*#" interact

解釋:

1.#!/usr/bin/expect :需要先安裝軟件,然后來說明用expect來執行

2.spawn ssh root@192.168.43.131 :spawn是進入expect環境后才可以執行的expect內部命令,用來執行它后面的命令。

3.expect "*password:" :也是expect的內部命令,用來解惑關鍵的字符串,如果有,就會立即返回下面設置的內容,如果沒有就看是否設置了超時時間。

4.send "123\r":這時執行交互式動作,與手工輸入密碼等效,在expect截獲關鍵字之后,它就會輸入send后面的內容。

5.interact :執行完畢后把持交互狀態,把控制台,這時候就可以進行你想要進行的操作了。如果沒有這一句,在登陸完成之后就會退出,而不是留在遠程終端上。

今天突然想起了expect,所以就重新看了一下,希望對你有幫助。


免責聲明!

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



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