佳木斯湛栽影视文化发展公司

主頁 > 知識(shí)庫 > Linux下使用expect命令編寫自動(dòng)化交互腳本

Linux下使用expect命令編寫自動(dòng)化交互腳本

熱門標(biāo)簽:百度競價(jià)排名 鐵路電話系統(tǒng) 地方門戶網(wǎng)站 服務(wù)外包 網(wǎng)站排名優(yōu)化 Linux服務(wù)器 AI電銷 呼叫中心市場需求

expect 是建立在工具控制語言(Tool Control Language,TCL)之上的一個(gè)工具,它允許你通過編寫程序來對(duì)一些日常繁瑣的任務(wù)進(jìn)行有交互界面的自動(dòng)化操作。在 expect 上下文環(huán)境,你可以使用一些額外的只適用于 expect 上下文環(huán)境的命令,如 spawn、send、interact 等命令。

expect 預(yù)期的終端輸出

這里預(yù)期的輸出從左往右只要存在匹配即可。它相當(dāng)于 Python 的 search() 函數(shù),而非 match() 函數(shù)。舉個(gè)例子你就明白了。

想要登陸到 root 權(quán)限,首先觀察在普通交互模式下的效果。

在獲悉返回字符串的模式后,你可以這樣寫 expect Password,也可以這樣寫 Password:,甚至可以寫成 assw,它們對(duì)于 expect 命令而言都是一樣的。

下面的腳本用來開啟一個(gè)遠(yuǎn)程 ssh 會(huì)話。

#!/usr/bin/expect
spawn ssh user@ip_addr
send "password\r"
interact

如果想要保存并調(diào)用一些變量,你可以使用 set 參數(shù)進(jìn)行設(shè)置。

公式
set 變量名 [lindex $argv 數(shù)字]
實(shí)例
set port [lindex $argv 1]

之前的 ssh 登陸腳本如果加上變量會(huì)變成下面這樣。大約需要 10 秒的加載時(shí)間。

#!/usr/bin/expect
set ip [lindex $argv 0]
set user [lindex $argv 1]
set password [lindex $argv 2]
spawn ssh "$user\@$ip"
expect "Password:"
send "$password\r";
interact

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

您可能感興趣的文章:
  • Linux expect實(shí)現(xiàn)自動(dòng)登錄腳本實(shí)例代碼
  • linux expect實(shí)現(xiàn)登陸遠(yuǎn)程主機(jī)并執(zhí)行命令示例代碼
  • linux中expect的介紹與使用示例
  • Linux中使用expect腳本實(shí)現(xiàn)遠(yuǎn)程機(jī)器自動(dòng)登錄
  • linux自動(dòng)化交互腳本expect詳解

標(biāo)簽:仙桃 湘潭 黃山 銅川 衡水 崇左 湖南 蘭州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Linux下使用expect命令編寫自動(dòng)化交互腳本》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    枣阳市| 邯郸市| 栖霞市| 乌兰察布市| 巴南区| 合川市| 崇仁县| 湖州市| 尚义县| 新密市| 娱乐| 鱼台县| 静乐县| 黎平县| 藁城市| 隆尧县| 上栗县| 合川市| 五家渠市| 临漳县| 呼伦贝尔市| 资源县| 临邑县| 上饶市| 东宁县| 横峰县| 治县。| 遂平县| 寻乌县| 柳林县| 东乡族自治县| 黄龙县| 新干县| 安新县| 贵德县| 玉环县| 淳化县| 黔西| 彰武县| 渑池县| 武定县|