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

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

第15章 Grep和高級(jí)正則表達(dá)式

2019-11-08 18:21:42
字體:
供稿:網(wǎng)友

通過使用grep命令,我們可以在文本文件中找到感興趣的文字,甚至從其他程序的輸出中進(jìn)行搜索。

本章的主要知識(shí)點(diǎn)

(1)使用grep命令搜索文件中的字符串;

(2)使用grep命令搜索其他命令的輸出;

(3)正則表達(dá)式的各種高級(jí)用法。

1.     grep的基本用法

grep命令的作用是在文本文件中搜索指定的字符串,并且把匹配成功的行數(shù)據(jù)打印到終端。執(zhí)行g(shù)rep命令的語法格式如下:

grep [options] [regular exPRession][filename…]

案例1

如何查看當(dāng)前計(jì)算機(jī)所使用的CPU型號(hào)?

#CPU型號(hào)保存在/proc/cpuinfo文件的model name字段中

$grep “model name” /proc/cpuinfo

 

主要參數(shù) [options]-c : 只輸出匹配的行-I : 不區(qū)分大小寫-h : 查詢多文件時(shí)不顯示文件名-l : 查詢多文件時(shí), 只輸出包含匹配字符的文件名-n : 顯示匹配的行號(hào)及行-v : 顯示不包含匹配文本的所有行(我經(jīng)常用除去grep本身)

2.     高級(jí)正則表達(dá)式

正則表達(dá)式可以指定字符的范圍:

集合

含義

[a-z]

匹配一個(gè)小寫字母

[A-Z]

匹配一個(gè)大寫字母

[a- zA-Z]

匹配一個(gè)字母

[a- zA-Z0-9]

匹配一個(gè)字母或數(shù)字

案例1:

如何使用grep命令匹配文本文件中的一個(gè)email地址呢?

#使用選項(xiàng)-E來支持?jǐn)U展正則表達(dá)式

$grep –E “[ a-zA-Z0-9_.- ]+@[ a-zA-Z0-9_.-]+/.[ a-zA-Z0-9 ]+” CREDITS

#grep命令中@用來匹配自己,因@是普通字符,所以不需要轉(zhuǎn)義;+是指匹配一個(gè)或多個(gè)加號(hào)+前面的字符。注意,使用加號(hào)+進(jìn)行匹配時(shí),至少要匹配一個(gè)。

 

在擴(kuò)展正則表達(dá)式中,可以方便使用一些特殊字符,如?,+,{n,m},()等,從而構(gòu)建更加強(qiáng)大、更加復(fù)雜的搜索模式。

 

案例2:

上一個(gè)例子,可能是以點(diǎn).開頭,該如何避免這種情況出現(xiàn)?
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 精河县| 三明市| 洪江市| 友谊县| 宜良县| 古蔺县| 孝昌县| 牟定县| 林口县| 凯里市| 五原县| 沛县| 乌海市| 龙南县| 洱源县| 苍梧县| 津市市| 海林市| 平利县| 宁陵县| 临猗县| 河东区| 铜梁县| 桦南县| 苍溪县| 深水埗区| 密云县| 资兴市| 陕西省| 丰镇市| 连云港市| 余庆县| 新闻| 牙克石市| 托克托县| 高碑店市| 阿图什市| 阿拉尔市| 资兴市| 疏附县| 汉川市|