六月丁香五月婷婷,丁香五月婷婷网,欧美激情网站,日本护士xxxx,禁止18岁天天操夜夜操,18岁禁止1000免费,国产福利无码一区色费

學習啦 > 學習電腦 > 操作系統(tǒng) > Linux教程 > linux grep命令學習

linux grep命令學習

時間: 志藝942 分享

linux grep命令學習

  grep命令是linux下的行過濾工具,其參數(shù)繁多,那么你知道linux grep命令學習么?接下來是小編為大家收集的linux grep命令學習,歡迎大家閱讀:

  linux grep命令學習

  -、grep簡述

  grep命令是linux中強大的文本搜索工具,那么grep取名是怎么來的呢?

  grep : g (globally) search for a re (regular expression) and p (print ) the results

  從上面的英文解釋中可以看出,grep命令使用正則表達式搜索文本,并把匹配的行打印出來

  二、grep使用格式

  grep [OPTION]... PATTERN [FILE]...

  三、OPTION

  -i:匹配時不區(qū)分大小寫進行匹配。

  -w:匹配時只匹配整個單詞,而不是字符串的一部分(如PATTERN='she'時匹配單詞she,而不匹配shell)

  -h:輸出時每行行首不顯示文件名。

  -H:輸出時每行行首顯示文件名。

  -n:輸出時每行顯示行號。

  -c:輸出時只顯示每個文件匹配行計數(shù)。

  -L:輸出時只顯示不包含匹配項的文件名。

  -l:輸出時只顯示包含匹配項的文件名。

  -o:輸出時每行只顯示匹配項內容

  -s:忽略錯誤信息。

  -v:逆向匹配,選擇不匹配的行。

  -A:After的意思,顯示匹配項后n行的數(shù)據(jù)

  -B:before的意思,顯示匹配項前n行的數(shù)據(jù)

  -C:顯示匹配字符串前后各n行的數(shù)據(jù)

  --color:以特定顏色高亮顯示匹配項內容

  --color選項是個非常好的選項,可以讓你清楚匹配上哪些字符。

  最好在自己的.bashrc文件中加入:

  alias grep='grep --color=auto'

  再以source .bashrc來立即生效即可這樣在每次grep搜索之后,自動高亮匹配效果了。

  grep 'she' test.txt

  grep -i 'she' test.txt

  grep -c 'she' test.txt

  grep -in 'she' test.txt

  grep -v 'she' test.txt

  grep -w 'she' test.txt

  grep -o 'she' test.txt

  grep -C 2 'she' test.txt

  著重說下-o參數(shù)

  假如grep 'she' test.txt輸出為

  she is beautiful

  I like she

  則grep -o 'she' test.txt輸出為

  she

  she

  意思就是只顯示匹配項部分,行中其它部分不顯示

  另說明下,PATTERN是正則表達式,為了避免shell的元字符對正則表達式的影響,請用單引號('')括起來,不要用雙引號括起來("")或者不括起來。

  四、PATTERN

  4.1基本正則表達式

  \:轉義字符。

  ^:錨定行的開始。如:'^help'匹配以help開頭的行

  $:錨定行的結束。如:'help$'匹配以help結尾的行

  .:匹配任意一個非換行符的字符。如:'he.p'匹配help,heap等,但不能匹配hep

  *:前面的字符重復0到多次。如:'he*p'匹配hp,hep,heep等

  [list]:匹配字符集中的一個字符。如:'[hk]elp'匹配help,kelp

  [n1-n2]:匹配字符范圍中的一個字符。如:'[a-z]elp'匹配aelp,belp,...,zelp

  [^list]:匹配字符集以外的一個字符。如:'[^a-d]elp'不匹配aelp,belp,celp,delp??善ヅ鋏elp,help, elp等

  \{n1,n2\}:前面的字符重復n1-n2次。如:'h\{1,3\}elp'匹配help,hhelp,hhhelp。

  \<:錨定單詞的開始。如:'\

  \>:錨定單詞的結尾。如:'p\>'匹配以p結尾的單詞。匹配help,但不匹配person

  特別說明:^在PATTERN開始位置出現(xiàn)才表示錨定行的開始,其它位置出現(xiàn)只是作為^字符。

  例如:

  grep '^help' test.txt 表示匹配以help開頭的行

  grep 'help^' test.txt 表示匹配包含字符串help^的行

  同理,$在PATTERN末尾位置出現(xiàn)才表示錨定行的結束,其它位置出現(xiàn)只是作為$字符。

  PATTERN為'^$'表示空行,因為只有行首和行尾

  \{n1,n2\}中n2可省略,表示前面字符重復n1至多次,重復次數(shù)不設上限

  4.2擴展正則表達式

  grep一般情況下支持基本正則表達式,可以通過參數(shù)-E支持擴展正則表達式,另外grep單獨提供了一個擴展命令叫做egrep用來支持擴展正則表達式,這條命令和grep -E等價。

  +:前面的字符重復1到多次。如:'he+p'匹配hep,heep,heeep等,但不匹配hp

  ?:匹配0或1次前面的字符。如:'he?p'匹配hp,hep

  |:或的方式匹配多個字串。如:'help|heap'匹配help,heap

  ():匹配整個括號內的字符串。如:'(help)+'匹配help,helphelp等,注意與'help+'的區(qū)別

  
看了“linux grep命令學習”還想看:

1.Linux下如何使用grep命令搜索多個單詞

2.Linux系統(tǒng)中怎么使用grep命令

3.講解Linux下grep命令的使用技巧

4.linux grep搜索命令的使用方法

5.15個Linux Grep命令使用實例

2991913