您現在的位置是:首頁 > 棋牌

網路工程師指令碼生成工具|(交換機指令碼批次生成 SecureCRT vbs指令碼)

  • 由 李苒晴 發表于 棋牌
  • 2022-01-20
簡介自動執行功能是基於SecureCRT 所支援的VBS指令碼來定製的,使用者不必要懂得VBS指令碼的語法和CRT物件的使用,只需簡單操作即可定製生成SecureCRT可以執行的VBS指令碼

半形符號怎麼設定

原創:

版權©歸

fclzuzu所有

版本:V1。6。2

整理:婷寶

特性:

很實用的運維工具|網工神器|

前言:

據fclzuzu闡述S

ecureCRT 本身就支援指令碼功能,這麼好的功能不利用簡直是浪費。如是就想到如果把每臺交換機要配置的命令,生成SecureCRT能夠直接執行的指令碼,那配置交換機豈不變成分分鐘的事。他在網上也找過類似工具,要麼就功能雞肋,要麼就不夠智慧,或者操作複雜,總之感覺不適用,還不如他自己開發一個,因此就有了本工具。

陸續一年多結合現場實際使用,版本更新很多次,目前使用感覺到很方便了。為了使自己創造得更有價值,他也希望能幫到同行或做運維的人,特與我們大家一起探討學習。

一、工具介紹

本工具主要是針對簡化網路工程師重複繁瑣的工作而開發。工具只是將重複工作透過自己配置生成指令碼程式碼來執行(其他運維場景估計也用得上)。

考慮到易用性和資料操作的靈活性,採用EXCEL的VBA來進行開發,將資料放在表格中,方便直接編輯和呼叫。建議使用microsoft office excel 2010版及以上來開啟使用,並且開啟時需要允許啟用宏程式碼,否則所有功能無法執行(放心使用,無病毒,程式碼完全開源,懂VBA的自己可以檢視或修改)。WPS個人版不支援VBA無法開啟使用,支援VBA的付費版本不確定是否相容,沒有測試過。

本工具的大致功能可以概括為以下幾點:

1。 可以1分鐘生成華為、華三等交換機的開局指令碼;

2。 可以1分鐘生成100臺相同配置的指令碼(名稱、IP、VLAN、描述等資訊不同);

3。 可以1分鐘自動配完1臺交換機,並自動儲存(配好自己定製的所有功能);

自動執行功能是基於SecureCRT 所支援的VBS指令碼來定製的,使用者不必要懂得VBS指令碼的語法和CRT物件的使用,只需簡單操作即可定製生成SecureCRT可以執行的VBS指令碼。對於不使用SecureCRT的使用者也可以生成txt指令碼內容,複製貼上來使用,只是不能做到自動化,但是生成的重複程式碼也可以極大減少工作量。作者還是強烈建議使用SecureCRT,再使用此工具來配合。

以下操作說明主要針對生成SecureCRT VBS指令碼的功能和使用來介紹

SecureCRT VBS指令碼能實現的功能和工具的一些其他功能:

1。 自動輸入命令,並按回車;

2。 延時等待。等待指定毫秒數再執行下一句命令(新增延時等待游標不移動指定秒數再執行下一句命令的功能。在動作中選擇等待游標移動的時間。建議使用這個功能來做等待);

3。 等待某字串。當出現某個字元後再進行下一句命令。比如:華為交換機,我要進入aaa模式建立使用者,這時可以設定等待螢幕出現aaa後,再執行下面的命令,避免指令碼執行出現意外不可控的情況(預設3秒沒等到傳送一次回車,一直迴圈);

4。 延時等待某字串指定時間後執行某命令,指定時間內沒有等到則跳過,執行下一條命令。比如配置某些命令,在有些情況會出現[Y/N]選擇,有些情況不會出現,這時就可以用這個功能,等待幾秒鐘,如果沒出現就繼續下一條命令;(V1。6。2新增功能:本條功能新增引數指定游標靜止不移動時間後再等待輸入,且可以對游標靜止不移動+等待輸入整體指定執行次數。後附使用案例)

5。 程式碼迴圈功能。比如要生成100臺交換機的配置指令碼,只需一份模板,將這100臺交換機的IP等資訊放在資料區域呼叫即可一鍵生成。再比如具體某一臺裝置內要建立20個VLAN並新增描述用於開局,只需寫一次執行過程的命令放在迴圈區域內然後呼叫資料區域的VLAN和描述資料即可自動生成該段程式碼。具體使用後面案例說明;

6。 日誌功能。SecureCRT執行完指令碼後自動儲存執行過程日誌,便於事後檢視;

7。 生成自動SSH/Telnet登陸,登陸成功後自動執行指定指令碼的指令碼功能;

8。 生成開局指令碼(目前支援華為、華三);

9。 生成其他常用指令碼(開機自動修改密碼、自動埠描述、自動AP修改名稱並分組);

10。 收藏及載入收藏功能(功能在程式碼區域右鍵選單中)常用配置好的程式碼可以收藏,下次再載入收藏的程式碼;

11。 刪除和插入行(僅AB列)(功能在程式碼區域右鍵選單中),由於EXCEL中插入和刪除整行會影響右側資料區域的資料,特增加了此功能,新增行和刪除行只對程式碼區生效。強烈推薦使用。刪除:選中幾行就刪除幾行(僅AB列)。插入幾行:選中幾行就在選中的上方插入幾行。

工具介面介紹

網路工程師指令碼生成工具|(交換機指令碼批次生成 SecureCRT vbs指令碼)

二、使用案例

1。接入層交換機,埠描述後自動儲存。生成VBS指令碼後,在SecureCRT的指令碼選單內選擇VBS指令碼檔案執行。注意需要呼叫右側列資料的命令要放在迴圈區域內,如果沒加迴圈標籤,系統會預設所有程式碼迴圈,造成不需要迴圈的程式碼也執行多次。({}花括號內的變數不區分大小寫)

網路工程師指令碼生成工具|(交換機指令碼批次生成 SecureCRT vbs指令碼)

2。生成一批交換機的開局指令碼。以下案例是匯聚層交換機兩臺裝置堆疊後的配置。堆疊後共20臺邏輯裝置。一次性生成20臺裝置的VBS指令碼。包括的配置有:命名,設定管理地址,建立VLAN並新增描述,新建使用者,開啟SSH,配置上行口,建立聚合口等。

網路工程師指令碼生成工具|(交換機指令碼批次生成 SecureCRT vbs指令碼)

上面程式碼中沒有迴圈區域內容也是可以的,只不過是迴圈生成的每個指令碼中,沒有再迴圈建立VLAN和聚合口的部分。比如每臺交換機的VLAN不同或者聚合口數量不同,這時可以分兩個指令碼來建立,第一次建立通用部分(建立管理,裝置命名等),第二次再針對不同的裝置單獨建立指令碼。最後先執行第一個指令碼,再執行第二個指令碼也是可以的。畢竟功能有限,不是所有情況都能一步到位的。

3。自動生成開局指令碼。本功能只做輔助,使用者要根據需求修改或調整程式碼至真實滿足需求再生成指令碼來使用。

網路工程師指令碼生成工具|(交換機指令碼批次生成 SecureCRT vbs指令碼)

4。收藏指令碼和載入指令碼的使用。經常使用到的已經調優好的指令碼可以在程式碼區右鍵收藏指令碼,並新增描述。也可以載入歷史收藏的指令碼。

網路工程師指令碼生成工具|(交換機指令碼批次生成 SecureCRT vbs指令碼)

5

。生成SSH/Telnet登入主指令碼,執行主指令碼可以呼叫其他指令碼從而實現自動登入自動執行的功能。

網路工程師指令碼生成工具|(交換機指令碼批次生成 SecureCRT vbs指令碼)

6。 5臺華為48口交換機堆疊成1臺邏輯裝置。大部分埠為access口。生成指令碼批次改為trunk口。詳見下圖使用場景和功能介紹。

網路工程師指令碼生成工具|(交換機指令碼批次生成 SecureCRT vbs指令碼)

7

。如下圖。假如要同時建立{a}列5臺裝置的指令碼,但是每臺裝置對應的VLAN資訊又不一樣,分5次建立又嫌太麻煩。這時可以在建立VLAN的迴圈區域所引用的{b},{c}列中填寫所有VLAN資訊,並在資料前面新增{數字}的標籤,這時就可以分開對應每臺裝置的VLAN,不會混淆了。(該功能只對生成多個指令碼生效,且只有迴圈區間所呼叫資料才能加{數字},否則只會被解析成普通字串){n}只能為英文半形字元,且沒有空格,填寫錯誤都會當做普通字串解析

網路工程師指令碼生成工具|(交換機指令碼批次生成 SecureCRT vbs指令碼)

說明一下:

生成的指令碼與工具無關聯,所有資料都以冗餘程式碼的形式生成在指令碼中,即執行指令碼時不時到這個excel表格中調取資料,即使單獨把指令碼發給別人也可以正確執行。

更正一下,案例5的用法不妥。

“等待字串出現再輸入”用法的前面不應該用“等待游標不移動時間”的功能。正常環境因為游標不移動了,就表示螢幕沒有新輸出,那就永遠等待不到這個字串。(因為crt。screen。waitforstring方法是指執行到這行命令再判斷接下來指定的幾秒鐘內是否出現等待的字串)

如果要在這個用法前面做等待可以用”等待時間(ms)”

所以,同樣道理,使用等待字串出現的五引數用法,第4個引數儘量不要用正整數,可以用0,不等待游標靜止,或者用負數。可以這樣:<[Y/N]>;<3>;;<-5>;<48>這個的邏輯是:首先判斷3秒內是否出現[Y/N],如果出現則輸入y,沒有再進行下輪等待,總共48次。但是一旦出現游標靜止5秒不動了,則認為需要輸入y的這種操作全部顯示完了,即跳出這一整行程式碼。這樣的好處就是,在不確定這48個埠有多少屬性發生修改,需要確認的情況下,確認48次可以,確認1次也可以,確認1次只是耗費1次的等待時間。

總之,說到底只是一個工具,做好的指令碼還得要自己測試一遍,比較穩妥。

獲取方式:

關注

2。

私信回覆“網工指令碼”獲取

3。

獲取人數較多,如若沒回復,請耐心等待

Top