Expect是 Linux 操作系統(tǒng)下的一個(gè)用來處理 交互 操作,系統(tǒng)默認(rèn)是沒有安裝expect庫,所以執(zhí)行expect會(huì)提示找不到命令,需要手動(dòng)安裝,其它安裝也比較簡單,可以通過二進(jìn)制源碼包編譯配置進(jìn)行安裝,也可以通過網(wǎng)絡(luò)借助yum源來安裝,yum源安裝比較簡單;我們下面借助Expect庫來實(shí)現(xiàn)Linux交互式自動(dòng)化運(yùn)維操作,只需要執(zhí)行腳本就可以實(shí)現(xiàn)自動(dòng)化運(yùn)維操作,不需要手動(dòng)輸入一些信息按確定,我們可以將交互過程寫在一個(gè)腳本上,使之自動(dòng)化完成。我們可以通過expect實(shí)現(xiàn)ssh自動(dòng)登錄、ftp自動(dòng)登錄、自動(dòng)傳輸文件、自動(dòng)創(chuàng)建和刪除用戶等都符合交互式自動(dòng)化運(yùn)維。下面我們會(huì)通過一些案例來展現(xiàn)結(jié)果,我們通過以下幾個(gè)命令來介紹四個(gè)基礎(chǔ)命令。
創(chuàng)新互聯(lián)公司是專業(yè)的孟州網(wǎng)站建設(shè)公司,孟州接單;提供網(wǎng)站設(shè)計(jì)制作、成都做網(wǎng)站,網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行孟州網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!
Linux在企業(yè)中應(yīng)用還是比較廣泛,而且expect是一個(gè)免費(fèi)的編程工具語言,用來實(shí)現(xiàn)自動(dòng)和交互式任務(wù)進(jìn)行通信,而無需人的干預(yù)。expect是不斷的更新,隨著時(shí)間的流逝,其功能越來越強(qiáng)大,對Linux有基本的了解都知道這個(gè)命令,而且是Linux操作系統(tǒng)管理員必不可少的一個(gè)命令,常用的shell腳本都需要用到這個(gè)工具,可以省去運(yùn)維大量的操作時(shí)間,有利于提高工作效率,如果對Linux不太了解的可以去購物平臺(tái)去搜劉遄老師的 《Linux就該這么學(xué)》 這本書學(xué)習(xí),書籍內(nèi)容比較適合初學(xué)者,也有好多案例比較適合企業(yè)常用的一些操作,expect需要Tcl編程語言的支持,要在系統(tǒng)上運(yùn)行expect必須首先安裝Tcl。
我們通過yum源來簡單的介紹下expect需要安裝哪幾個(gè)庫,如果要通過二進(jìn)制tar.gz包安裝也可以,需要去下載expect.tar.gz安裝包,這里就不介紹了,操作如下:
# yum install expect.x86_64 expect-devel.x86_64 -y
下面詳細(xì)的解釋四個(gè)基礎(chǔ)命定,expect中最關(guān)鍵的四個(gè)命令是:send,expect,spawn,interact。
1、send:用于向進(jìn)程發(fā)送字符串;
2、expect:從進(jìn)程接收字符串;
3、spawn:啟動(dòng)新的進(jìn)程;
4、interact:允許用戶交互;