Linux Shell自動互動 expect

2021-09-28 20:22:45 字數 893 閱讀 3542

expect是乙個免費的程式設計工具,用來實現自動的互動式任務,而無需人為干預。

注意:在使用之前需要安裝 expect

在使用 expect 時,我們基本是操作下面幾個命令:

命令作用說明

spawn

啟動新程序

expect

從程序接收字串

send

用於向程序傳送字串

interact

用於退出自動化,進入人工互動

#!/usr/bin/expect

set timeout 2

spawn su root

expect "*password*"

send "123\r"

interact

#!/usr/bin/expect

set timeout 2

spawn sudo passwd root

expect "*password*"

send "123\r"

expect "*password*"

send "123\r"

interact

這段**與上面那段**格式差不多,差別在於這段**寫了兩遍 expect 和 send。為什麼呢?

原因是在平時在修改密碼的時候,會讓我們輸入兩次密碼,第一次是新的密碼,第二次是確認密碼,所以這裡第一組 expect 和 send 是完成的新的密碼的輸入操作,第二組 expect 和 send 是完成了確認密碼的操作。

以上就是 expect 的簡單使用。

技 術 無 他, 唯 有 熟 爾。

知 其 然, 也 知 其 所 以 然。

踏 實 一 些, 不 要 著 急, 你 想 要 的 歲 月 都 會 給 你。

linux shell互動命令學習

shell 互動模式 1 一 shell 工作模式 2 二 read互動命令使用.2 2.1 read 指定變數.2 2.2 read 預設變數.3 2.3 read 讀取多行.3 2.4 read 計時器.4 2.5 read 計數器.4 2.6 read匹配方向鍵.5 2.7read 默讀 輸入...

Linux Shell互動式自動化運維程式

expect 是linux作業系統下的乙個用來處理互動操作,系統預設是沒有安裝expect庫,所以執行expect會提示找不到命令,需要手動安裝,其它安裝也比較簡單,可以通過二進位制原始碼包編譯配置進行安裝,也可以通過網路借助yum源來安裝,yum源安裝比較簡單 我們下面借助expect庫來實現li...

Linux Shell互動式自動化運維程式

expect 是linux作業系統下的乙個用來處理互動操作,系統預設是沒有安裝expect庫,所以執行expect會提示找不到命令,需要手動安裝,其它安裝也比較簡單,可以通過二進位制原始碼包編譯配置進行安裝,也可以通過網路借助yum源來安裝,yum源安裝比較簡單 我們下面借助expect庫來實現li...