欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Linux下使用expect命令編寫自動化交互腳本

 更新時間:2018年11月20日 10:13:22   作者:吃面包的科學(xué)怪人  
今天小編就為大家分享一篇關(guān)于Linux下使用expect命令編寫自動化交互腳本,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧

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

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

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

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

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

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

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

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

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

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

#!/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)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接

相關(guān)文章

  • 一個簡單的linux命令 tail

    一個簡單的linux命令 tail

    這篇文章主要介紹了一個簡單的linux命令tail,tail命令用來從指定點開始將文件寫到標(biāo)準(zhǔn)輸出,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • shell腳本結(jié)合iptables防端口掃描的實現(xiàn)

    shell腳本結(jié)合iptables防端口掃描的實現(xiàn)

    這篇文章主要介紹了shell腳本結(jié)合iptables防端口掃描的實現(xiàn),中間使用了inotify-tools工具,需要的朋友可以參考下
    2014-05-05
  • shell腳本中if判斷‘-a‘ - ‘-z‘的具體使用

    shell腳本中if判斷‘-a‘ - ‘-z‘的具體使用

    本文主要介紹了shell腳本中if判斷‘-a‘ - ‘-z‘具體使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-03-03
  • 詳解Linux命令中的正則表達(dá)式

    詳解Linux命令中的正則表達(dá)式

    正則表達(dá)式是一套由多個元字符組成的模糊查找模式,使用正則表達(dá)式可以快速查找和定位文本中指定的內(nèi)容。接下來通過本文給大家介紹Linux命令中的正則表達(dá)式,需要的朋友參考下吧
    2017-02-02
  • Linux Shell腳本語句執(zhí)行失敗,后續(xù)語句繼續(xù)執(zhí)行的問題及解決

    Linux Shell腳本語句執(zhí)行失敗,后續(xù)語句繼續(xù)執(zhí)行的問題及解決

    這篇文章主要介紹了Linux Shell腳本語句執(zhí)行失敗,后續(xù)語句繼續(xù)執(zhí)行的問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • shell中if條件判斷的實現(xiàn)

    shell中if條件判斷的實現(xiàn)

    本文主要介紹了shell中if條件判斷的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • CentOS中使用Shell腳本實現(xiàn)每天自動備份網(wǎng)站文件和數(shù)據(jù)庫并上傳到FTP中

    CentOS中使用Shell腳本實現(xiàn)每天自動備份網(wǎng)站文件和數(shù)據(jù)庫并上傳到FTP中

    這篇文章主要介紹了CentOS中使用Shell腳本實現(xiàn)每天自動備份網(wǎng)站文件和數(shù)據(jù)庫并上傳到FTP中,本文腳本比較實用,其它Linux系統(tǒng)也可參考,需要的朋友可以參考下
    2014-12-12
  • 如何利用shell開發(fā)keepalived啟動腳本

    如何利用shell開發(fā)keepalived啟動腳本

    Keepalived軟件起初是專為LVS負(fù)載均衡軟件設(shè)計的,用來管理并監(jiān)控LVS集群系統(tǒng)中各個服務(wù)節(jié)點的狀態(tài),后來又加入了可以實現(xiàn)高可用的VRRP功能。這篇文章主要介紹了使用shell開發(fā)keepalived啟動腳本,需要的朋友可以參考下
    2020-03-03
  • Linux中10個有用的命令行補全例子

    Linux中10個有用的命令行補全例子

    這篇文章主要為大家詳細(xì)介紹了Linux中10個有用的命令行補全例子,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • shell獲取命令行參數(shù)示例分享

    shell獲取命令行參數(shù)示例分享

    這篇文章主要介紹了shell獲取命令行參數(shù)示例分享,需要的朋友可以參考下
    2014-03-03

最新評論