国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Linux > 正文

深入理解Linux中的grep命令

2019-10-26 18:49:26
字體:
來源:轉載
供稿:網友

介紹

Linux系統中grep命令是一種強大的文本搜索工具,它能使用正則表達式搜索文本,并把匹 配的行打印出來。grep全稱是Global Regular Expression Print,表示全局正則表達式版本,它的使用權限是所有用戶。

grep [-acinv] [--color=auto] '查找字符串' filename 

參數:

    -a :將binary文件以text文件的方式查找數據

    -c :計算找到‘查找字符串'的次數

    -i :忽略大小寫的區別,即把大小寫視為相同

    -n :順便輸出行號

    -v :反向選擇,即顯示出沒有‘查找字符串'內容的那一行

    -l :只顯示匹配的文件,不顯示具體內容

    -f<規則文件> : 指定規則文件,其內容含有一個或多個規則樣式,讓grep查找符合規則條件的文件內容,格式為每行一個規則樣式。  

實例:

#取出文件/etc/man.config中包含MANPATH關鍵詞的行,并把找到的關鍵字加上顏色grep --color=auto MANPATH /etc/man.config#把ls -l的輸出中包含字母file(不區分大小寫)的內容輸出ls -l | grep -i file#在文件 '/var/log/messages'中查找關鍵詞"Aug" grep Aug /var/log/messages #在文件 '/var/log/messages'中查找以"Aug"開始的行grep ^Aug /var/log/messages #選擇 '/var/log/messages' 文件中所有包含數字的行 grep [0-9] /var/log/messages #在目錄 '/var/log' 及隨后的目錄中搜索字符串"Aug" (遞歸查找)grep Aug -R /var/log/* #在當前目錄搜索帶'energywise'行的文件grep 'energywise' *      #在當前目錄及其子目錄下搜索'energywise'行的文件grep -r 'energywise' *  #查找指定進程ps -ef|grep svn#從文件中讀取關鍵詞進行搜索,輸出test.txt文件中含有從test2.txt文件中讀取出的關鍵詞的內容行cat test.txt | grep -f test2.txt

grep與正規表達式:

字符類的搜索:如果我想要搜尋 test 或 taste 這兩個單字時,可以發現到,其實她們有共通的 ‘t?st' 存在~這個時候,我可以這樣來搜尋:

grep -n 't[ae]st' regular_express.txt

其實 [] 里面不論有幾個字節,他都謹代表某『一個』字節, 所以,上面的例子說明了,我需要的字串是『tast』或『test』兩個字串而已!

字符類的反向選擇 [^] :如果想要搜索到有 oo 的行,但不想要 oo 前面有 g,如下

grep -n '[^g]oo' regular_express.txt

字符類的連續:再來,假設我 oo 前面不想要有小寫字節,

grep -n '[^a-z]oo' regular_express.txt

當我們在一組集合字節中,如果該字節組是連續的,例如大寫英文/小寫英文/數字等等, 就可以使用[a-z],[A-Z],[0-9]等方式來書寫,那么如果我們的要求字串是數字與英文呢? 呵呵!就將他全部寫在一起,變成:[a-zA-Z0-9]。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 南和县| 涞水县| 读书| 莆田市| 阿拉善左旗| 太白县| 中方县| 云南省| 大悟县| 勃利县| 怀柔区| 内丘县| 璧山县| 共和县| 大名县| 邛崃市| 闸北区| 安顺市| 屯昌县| 中牟县| 兰西县| 来安县| 铜梁县| 昭觉县| 青阳县| 建德市| 沅江市| 信丰县| 奉化市| 吉安市| 宁晋县| 农安县| 十堰市| 盐源县| 射阳县| 青铜峡市| 买车| 龙里县| 清流县| 扬州市| 个旧市|