1. 程式人生 > >正則表達式和通配符

正則表達式和通配符

.com color -o 分享 一個 拓展 次數 提前 ffffff

1基礎正則表達式

. 一個任次意字符PIPE
\? 匹配前面的字符 0或者一次
用這個來一個路徑的基名

技術分享圖片

把管道左邊的命令給到右邊
grep
-e 支持拓展的正則表達式匹配到的 字符
-o只顯示
[:alpha:] a-zA-z
[[:alpha:]] [a-zA-z] 中任意一個字母

  • 匹配前面的任意字母任意次 這裏特別註意的是 如果中括號[]內有很多字母
    次數的意思是匹配的任意字母之和有可能是 [asd] 比如這裏表示 a匹配的s的和d匹配的次數總和為

tr 命令 刪除或者轉換
-d 刪除字符
$ 正則表達式 意思是行尾 表示一個的結尾 在這裏表示的是以 / 結尾
有可能有一次或者不存在

4

grep命令
-E 支持擴展的正則表達式

那麽基本正則是什麽呢
{m,n} 匹配 匹配 m<=次數<=n
{m,n}
{m,}
-o 顯示到的匹配的結果

技術分享圖片
-v 取反 獲取沒有匹配到的行
-A後幾行
-B前幾行
-C前後各幾行
-i 忽略大小寫
sort
-n 按照數字字母順序排序
-r 倒序
uniq
配合uniq -c 統計重復的行刪除重復行 剩下的不重復的行
-d 只顯示重復行
-u只顯示不重復行

wc
-l 統計行數
-w 統計單詞數

-c統計字節數
-L 最長一行的字節長度
幾個 比較難記住的通配符
[:punct:]標點符號
[:print:]可打印字
[:xdigit:]
[:space:] 水平或空白字符

空行 ^$
空白行 [[:space:]]*

為止錨定
<\單詞首
\>
\b單詞首
\< \>
\b 單詞 \b
$
^行首
^$行尾

在匹配條件中
| 表示或者關系
grep ‘A|B’
匹配A或者B字符

passwd文件 的代表的意思
用戶:X:uid:gid:描敘:家目錄:shell類型
shadow文件的不同位置的意思
用戶名:密碼:1970到現在天數:最小密碼有效期:最大密碼有效期:提前幾天提醒:寬限期:用戶可用多長時間

group文件
組名:x:gid:最成員
gshadow
組名:最密碼:組管理員:最成員

正則表達式和通配符