小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Linux運(yùn)維提升學(xué)習(xí)之Expect關(guān)鍵字介紹

 老男孩Linux 2018-06-29

Expect中的特殊關(guān)鍵字用于匹配過(guò)程,代表某些特殊含義或狀態(tài),一般用于 expect 族命令中而不能在外面單獨(dú)使用,也可以理解為事件,使用上類似于:

expect eof { }

一、eof

eof(end-of-file)關(guān)鍵字用于匹配結(jié)束符,比如文件的結(jié)束符、FTP 傳輸停止等情況,在這個(gè)關(guān)鍵字后跟上動(dòng)作來(lái)做進(jìn)一步的控制,特別是 FTP 交互操作方面,它的作用很大。用一個(gè)例子來(lái)看看:

swawn ftp anonymous@10.11.15.105.110

expect {

“password:” {exp_send “who am i”}

eof {ftp connect close}

}

interact {}

二、timeout

timeout是expect中的一個(gè)重要變量,它是一個(gè)全局性的時(shí)間控制開(kāi)關(guān),你可以通過(guò)為這個(gè)變量賦值來(lái)規(guī)定整個(gè)expect操作的時(shí)間,注意這個(gè)變量時(shí)服務(wù)于expect全局的,它不會(huì)糾纏于某一條命令,即時(shí)命令沒(méi)有任何錯(cuò)誤,到事件仍然會(huì)被集火這個(gè)變量,但這個(gè)時(shí)間達(dá)到以后除了激活一個(gè)開(kāi)關(guān)之外不會(huì)做其他的事情,如何處理是腳本編寫(xiě)人員的事情,看看它的實(shí)際使用方法:

set timeout 60

spawn ssh root@172.16.1.31

expect “password:” {send “word\r”}

expect timeout {puts “exoect wai timeout”; return}

上面的處理中,首先將timeout設(shè)置為60秒,當(dāng)出現(xiàn)問(wèn)題的時(shí)候程序可能會(huì)停止下來(lái),只要到60秒,就會(huì)激活下面的timeout動(dòng)作,這里我打印一個(gè)信息并停止了腳本的運(yùn)行。(例子是打印信息并且停止了腳本的運(yùn)行,這里可以根據(jù)自己的需求或思路,規(guī)定相關(guān)動(dòng)作)

在另一種expect格式中,我們還有一種設(shè)置timeout變量的方法,看看下面的例子:

spawn ssh root@172.16.1.31

expect {

-timeout 60

-re “password:” {exp_send “word\r”}

-re “Topsecos#” { }

timeout {puts “Expect was timeout”; return}

}

在expect命令中間加上一個(gè)小橫杠,也可以設(shè)置timeout變量

timeout變量中,設(shè)置為0表示立即超時(shí),-1則表示永不超時(shí)

expect {

-timeout 20

“yes/no” {send “yes\r”; exp_continue}

“password” {send “$password\r”}

timeout {puts “expect connect timeout,pls contact oldboy.”; return}

}

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多