cisco的管道符

前面總是憋長篇,動輒上w字,寫一個多星期,實在是有點對不起觀衆,再則就是書看多了也該做做小實驗了,XD,今天就來做一下cisco的管道符的實驗,沒找什麼材料,實驗所得論據,只能參考不能偏信。當然,管道不是水管,學名應該叫輸出選擇器,到底是啥,看下兩幅圖。

121925227.png

沒錯,就是這貨,可能平時你們經常用其中的be、in、se,一般來說se用最多,實在設備不支持採用in和be結合,那他們又是什麼作用呢,雖然大家都知道,但是還是截個小圖,沒錯就在下面!如果是be,表明從包含後面正則表達式的行開始,一般情況下我們使用一個純字符串,比如

121939724.png

沒錯就是把showrun從第一次出現aaa那行開始顯示,接下來是in和se的區別

122005644.png

in的話很簡單,就是顯示出包含後面正則表達式的那一行,如果多行包括顯示多行;如果是se,一般多用來匹配協議,簡單的說就是從包含這個正則表達式的,一個非空格開頭的行,到下一個非空格開頭的行之間。以上三個比較常用,接下來有一個不常用的,但是很好玩的,就是ex,如下圖

122335309.png

嗯,我就是要排除eigrp,看看啥現象

122352659.jpg

哎喲沃茨奧,你他媽在逗我,這,有什麼作用呢,我想想,可能在查看路由表的時候,比如說ospf的,可以排除O的條目,或者OIA的,應該還有其他作用,有待發現。好,接下來也是四個比較相關的參數,append、tee和redirect

122408299.jpg

這三個小夥伴有啥用呢,雖然叔四級沒過,但是叔還是能看得懂的,因爲叔有有道詞典,tee是說copy輸出到一個URL,redirect是說重定向輸出到URL,append是說添加重定向輸出到一個URL,什麼意思呢,做一下看現象,如下圖

122457323.png

上圖的現象是tee把show的內容顯示出來了,其他兩個沒有,但是我後面有寫文件名,是希望他們保存,檢查文件內容如下。

122518232.png

好像三個都寫進去了,那他們區別在哪裏呢,不着急,我們再寫一遍show帶管道符的命令試試,爲了使得時間上看去不一樣,我們修改一下時間。

122534406.png

再來寫管道符命令,自習看輸出提示。

122548816.png

我和我的小夥伴都驚呆了,tee和redirect都提示文件名已經存在,是否覆蓋,手一抖都覆蓋了,但是append沒有任何提示,再檢查下文件變成什麼樣了。

122605231.png

果然tee和redirect的文件還是隻有一句話,但是內容被覆蓋了,可是append有兩句話,所以總結如下:tee是先輸出內容在cli界面,然後複製進指定URL內;redirect是將輸出內容重定向到指定URL內,由於輸出被重定向了,所以我們看不到cli界面有顯示;append是將輸出內容附加到指定URL內,也不會給我們顯示在cli界面上;tee和redirect和append的指定URL不存在時,會自動生成文件,但是如果都存在,tee和redirect會詢問是否覆蓋,覆蓋之後之前的文件就沒有了,但是append的話就會在原來文件內容後附加上新內容。那如果,我又想立刻輸出在cli界面上,又想保存在知道URL內,而且每次都保存在一個URL內,也就是每次都把輸出附加在指定URL內能做到麼。不要急,中華兒女多奇志,島國人民歡樂多。我們的開發人員明銳的想到了這一點,所以我們有個參數是,tee /append,tee之後和斜槓中間有空格,如下圖。

122737279.png

然後使用的結果如下,怒來了三遍,不多說看圖。

122754800.png

嗯,最基本最簡單的管道符介紹到這裏,其實在管道符之後,我們還可以使用,對沒錯,就是我前面一直說的正則表達式,我們原來se、in、be的都是直接跟了字符串,其實我們還可以通過正則表達式,來完成更高級一點的輸出選擇。比如說我們平時查看接口信息,show interface,顯示的內容雖然全但是太多,如下:

122811108.png

看到沒,再才一個接口,後面還有很多more,那如果我們只想看接口隊列,可以這麼敲:

122907294.png

如果再想看MTU可以這麼敲,這後面的|就不是表明管道符進行過濾了,而是正則表達式裏面or的功能:

122939435.png

這個還可以使用多次,比如你想知道是哪些接口的mtu和隊列是這樣的,可以加上一個表明接口那一行都有的一個單詞:

122957100.png

如果你經常用這條命令,懶得每次敲,我們還有一個可以給命令一個小名的神器:alias exec cy show interfaces | in Queueing | MTU | administratively這樣

123018122.png

那麼以後你敲cy就像這樣,好神奇:

123040262.png

妥妥的,還可以使用比如說這樣的,有兩個內容被我選擇,但是我只需要一個的:

123059623.png

那我可以使用正則表達式^route,表明以route開頭的才被選擇,結果如下:

123618845.png

當然我舉的這個例子不算很好,因爲只要寫router就可以解決了,如果以後真遇到這種情況,可以使用這種方法,XD。那其實我們正則表達式是很流弊的,但是由於數學學的不好只能說道這裏了,其實在BGP的as-filter-list也用到了,可以看我前面的BGPv4的配置手冊的讀書筆記,然後由於包子媽大人催侍寢,我必須馬上睡覺了,就不再研究了,小夥伴們自己努力好好學習天天想上。最後來個好像很犀利的,人家文檔的截圖:

123145339.png

123202451.png

既然用了人家內容,其實也參看了人家的思路,所以還是要把人家連接貼出來,沒錯就是這個:http://www.2cto.com/net/201307/225017.html

那好吧,最後如果大家想轉載,這麼亂,也會有人想轉載麼,嗯,請告知下作者,當我沒說,也不會有人轉載的。侍寢去了,這是苦逼IT工程師的節奏!!!

2013-08-18   03:30

本文出自 “曹五柳” 博客,轉載請與作者聯繫!




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章