文本過濾之——grep,sort,wc,uniq,tr, 精準過濾IP地址,A類地址,B類地址.... 並排序

文本過濾之IP地址精準過濾    

  在寫之前自己整理了一點自己平時老是搞混的東西,最基礎的就不寫了,前面的東西不想看得一眼代過,就當藉着做IP過濾順便整理下常用的,看看後面如何精準鎖定IP地址吧。



一、正則表達式(PATRERN) 括號() 方括號[] 尖括號<> 大括號{} 的使用


     \[\]  匹配指定範圍內的任意單個字符    

    [^] 用於匹配指定對象之外的任意單個字符

    ^[] 用於匹配指定對象並且在行首的任意單個字符


    \(\) 用作後向引用,也可以用於限定或(\|)的作用域

    \1 引用第一個左括號及其與之對應的右括號所包含的所有內容

    \2 同理

    \3 同理


    \< 其後面的任意字符必須作爲單詞的首部出現 

    \> 其前面的任意字符必須作爲單詞的尾部出現

    \<root\> 單詞root必須單獨作爲單詞


    \{\} 用於匹配次數

    \{m,n\} 匹配其前字符至少m次,至多n次

例:數字開頭數字結尾

grep '\([0-9]\).*\1$' /etc/inittab
用於匹配某一類的任意單個字符 [[:digit:]],[[:lower:]],[[:upper:]],[[:punct:]],[[:space:]],[[:alpha:]],[[:alnum:]]

二、grep(全局搜索),sort(文本統計),cut(文本剪切工具),wc(文本統計),tr(字符處理命令),uniq(顯示重複行,相鄰+相同=重複)

    grep [option] pattern [file] [file1] ...

    常用 -i -v -o --color -E

    -A #   顯示其後#行內容

    -B #    其前

    -C #    其前後

例:cpu family及其後兩行

grep -A 2 'cpu family' /proc/cpuinfo


    sort [option] [file]

    -n 數值排序

    -r 降序排列

    -t 字段分隔符

    -k 以哪個字段爲準進行排序

    -f 忽略字符大小寫排序

例:

sort -t: -n -k3 /etc/passwd


    cut [option] [file]

    -d 定義分隔符

    -f 與-d一起使用,指定顯示那個區域

    -b 以字節爲單位進行分割

    -c以字符爲單位進行分割

例:看看變化就知道

netstat -nut | grep ESTAB | awk '{print $5}'
netstat -nut | grep ESTAB | awk '{print $5}' | cut -d: -f1


    wc [option] [file]

    -l 顯示行數

    -w 顯示單詞數

    -c 顯示字節數

    tr [option]

    -d 刪除出現在字符集中的所有字符

例:

cat /etc/passwd | tr -d 'a'


    uniq [option] [file]

    -c 顯示文件中行重複的次數

    -d 只顯示重複行

三、(重頭戲)過濾普通IP地址和選定類型的IP地址

樣本:iptest.txt

127.0.0.1s asdfdf

123.0.7.193

wo 23.2.2.3

network127.0.0.1/16 is a bad guy

193.192.168.32

172.168.100.1


普通IP:不建議使用,但是速度稍微快一點

grep '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9] iptest.txt


A類IP:(B,C類同理)

grep --color '\<\([1-9]\|[1-9][0-9]\|1[01][0-9]\|12[0-7]\)\.\([0-9]\|[1-9][0-9]\|1[0-9][0-9]\|2[0-4][0-9]\|25[0-4]\)\.\([0-9]\|[1-9][0-9]\|1[0-9][0-9]\|2[0-4][0-9]\|25[0-4]\)\.\([0-9]\|[1-9][0-9]\|1[0-9][0-9]\|2[0-4][0-9]\|25[0-4]\)' iptest.txt


wKiom1W8Z3XCnpV0AAQoB4_LWcY999.jpg

定有不足,差錯肯請致郵:[email protected]








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