Linux grep(global search regular expression(RE) and print out the line,全面搜索正則表達式並把行打印出來)是一種強大的文本搜索工具,它能使用正則表達式搜索文本,並把匹配的行打印出來。linux
一、 grep使用簡明git
grep命令用於查找文件裏符合條件的字符串。正則表達式
能夠使用#grep --help查看其使用方法。express
經常使用參數:bash
-i:忽略大小寫工具
--color:符合模式的文本行顯示顏色spa
-v:顯示沒有被模式匹配到的行日誌
-o:只顯示被模式匹配到的字符串htm
-E:使用擴展正則表達式(=egrep)字符串
使用基本正則表達式定義的模式來過濾文本,並將符合模式的文本行顯示出來:
grep [options] PATTERN [FILE...]
基本正則表達式(PATTERN中的元字符匹配):
(1)字符匹配
.:匹配任意單個字符
[]:匹配指定範圍內的任意單個字符
[^]:匹配指定範圍外的任意單個字符
[[:digit:]]:匹配數字[0-9]
[[:lower:]]:匹配小寫字母[a-z]
[[:upper:]]:匹配大寫字母[A-Z]
[[:punct:]]:匹配特殊字符
[[:space:]]:匹配空格
[[:alpha:]]:匹配字母[a-zA-Z]
[[:alnum:]]:匹配字母和數字[0-9a-zA-Z]
(2)次數匹配
*:匹配其前面的字符任意次(0次-任意次)
.*:任意長度的任意字符
\?:匹配其前面的字符1次或0次
\{m,n\}:匹配其前面的字符至少m次,至多n次
例如\{1,\}:匹配其前面的字符至少1次
\{0,3\}:匹配其前面的字符0到3次
(3)位置錨定
^:錨定行首
$:錨定行尾
^$:表示空白行
\<或\b:錨定詞首
\>或\b:錨定詞尾
(4)分組及後向引用
\(\):分組,將以後須要引用的內容分組囊括起來
\n:後向引用,即引用前面第n個括號內包含的全部內容
擴展正則表達式(PATTERN中的元字符匹配擴展):
(1)次數匹配
?:匹配其前面的字符1次或0次
+:匹配其前面的字符至少1次
{m,n}:匹配其前面的字符至少m次,至多n次
(2)分組及後向引用
():分組,將以後須要引用的內容分組囊括起來
\n:後向引用,即引用前面第n個括號內包含的全部內容
(3)或者
|:匹配左邊的字符串或者右邊的字符串
例如B|boy:B或boy
二、 grep配置顏色顯示
grep是查日誌時必需要用的命令,爲了在終端方便顯示查看,能夠加顏色和高亮等設置。
Linux系統使用grep命令讓查找出來的內容更直觀的打印出來,有兩種經常使用方法:
方法1:設置別名
#vi ~/.bashrc
添加內容:
alias grep='grep--color=auto' //grep--color=auto設爲grep
#source ~/.bashrc //使配置即時生效
方法2:設置系統環境變量
#vi ~/.bashrc
添加內容:
export GREP_OPTIONS='--color=XXX'GREP_COLOR='a;b'
#source ~/.bashrc //使配置即時生效
參數說明:
export GREP_OPTIONS='--color=XXX';XXX有三個值供選擇:never、always、auto;
always和auto的區別:always會在任何狀況下都給匹配字段加上顏色標記;auto只給最後一個管道符匹配項加亮顯示;
export GREP_COLOR='a;b';默認是'1;31(高亮的紅色);能夠根據本身的喜愛設置不一樣的顏色:
a能夠選擇:0、一、四、五、七、8
0關閉全部屬性
1設置高亮度
4下劃線
5閃爍
7反顯
8消隱
b能夠選擇:30-37或40-47
X0 black
X1 red
X2 green
X3 yellow
X4 blue
X5 purple
X6 cyan
X7 white
X=3:設置前景色
X=4:設置背景色
參考:http://www.linuxidc.com/Linux/2014-09/106871.htm
------------------------------------------------------Tanwheey--------------------------------------------------
愛生活,愛工做。