• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 76,  comments - 621,  trackbacks - 0

            這組命令以指定模式搜索文件,并通知用戶在什么文件中搜索到與指定的模式匹配的字符串,并打印出所有包含該字符串的文本行,在該文本行的最前面是該行所在的文件名。 grep 命令一次只能搜索一個(gè)指定的模式;egrep 命令檢索擴(kuò)展的正則表達(dá)式(包括表達(dá)式組和可選項(xiàng));fgrep 命令檢索固定字符串,它不識(shí)別正則表達(dá)式,是快速搜索命令。

            這組命令在搜索與定位文件中特定的主題方面非常有用。要搜索的模式可以被認(rèn)為是一些關(guān)鍵詞,您可以用它們來(lái)搜索文件中包含的這些關(guān)鍵詞。編寫(xiě)程序時(shí),可以用它來(lái)尋找某一個(gè)函數(shù),或是相關(guān)的詞組。grep 命令的搜索功能比 fgrep 強(qiáng)大,因?yàn)?grep 命令的搜索模式可以是正則表達(dá)式,而 fgrep 卻不能。

            該組命令中的每一個(gè)命令都有一組選項(xiàng),利用這些選項(xiàng)可以改變其輸出方式。例如,可以在搜索到的文本行上加入行號(hào),或者只輸出文本行的行號(hào),或者輸出所有與搜索模式不匹配的文本行,或只簡(jiǎn)單地輸出已搜索到指定模式的文件名,并且可以指定在查找模式時(shí)忽略大小寫(xiě)。

            這組命令在指定氖淙胛募脅檎矣肽J狡ヅ淶男小H綣揮兄付ㄎ募虼穎曜際淙?中讀取。正常情況下,每個(gè)匹配的行被顯示到標(biāo)準(zhǔn)輸出。如果要查找的文件是多個(gè),則在每一行輸出之前加上文件名。

            語(yǔ)法:  grep [選項(xiàng)] [查找模式] [文件名1,文件名2,……]  egrep [選項(xiàng)] [查找模式] [文件名1,文件名2,……]  fgrep [選項(xiàng)] [查找模式] [文件名1,文件名2,……]

            該命令的各選項(xiàng)含義如下:

            -E 每個(gè)模式作為一個(gè)擴(kuò)展的正則表達(dá)式對(duì)待。 -F 每個(gè)模式作為一組固定字符串對(duì)待(以新行分隔),而不作為正則表達(dá)式。 -b 在輸出的每一行前顯示包含匹配字符串的行在文件中的字節(jié)偏移量。 -c 只顯示匹配行的數(shù)量。 -i 比較時(shí)不區(qū)分大小寫(xiě)。 -h 在查找多個(gè)文件時(shí),指示grep不要將文件名加入到輸出之前。 -l 顯示首次匹配串所在的文件名并用換行符將其隔開(kāi)。    當(dāng)在某文件中多次出現(xiàn)匹配串時(shí),不重復(fù)顯示此文件名。 -n 在輸出前加上匹配串所在行的行號(hào)(文件首行行號(hào)為1)。 -v 只顯示不包含匹配串的行。 -x 只顯示整行嚴(yán)格匹配的行。 -e expression 指定檢索使用的模式。用于防止以“-”開(kāi)頭的模式被解釋為命令選項(xiàng)。 -f expfile 從expfile文件中獲取要搜索的模式,一個(gè)模式占一行。

            對(duì)該組命令的使用還需注意以下方面:

            在命令后鍵入搜索的模式,再鍵入要搜索的文件。其中,文件名列表中也可以使用特殊字符,如 “*” 等,用來(lái)生成文件名列表。如果想在搜索的模式中包含有空格的字符串,可以用單引號(hào)把要搜索的模式括起來(lái),用來(lái)表明搜索的模式是由包含空格的字符串組成。否則,Shell 將把空格認(rèn)為是命令行參數(shù)的定界符,而 grep 命令將把搜索模式中的單詞解釋為文件名列表中的一部分。在下面的例子中,grep 命令在文件 example 中搜索模式 “text file”。

            grep ’text file’ example

            用戶可以在命令行上用Shell特殊字符來(lái)生成將要搜索的文件名列表。在下面的例子中,特殊字符“*”用來(lái)生成一個(gè)文件名列表,該列表包含當(dāng)前目錄下所有的文件。該命令將搜索出當(dāng)前目錄下所有文件中與模式匹配的行。

            grep data *

            特殊字符在搜索一組指定的文件時(shí)非常有用。例如,如果想搜索所有的C程序源文件中特定的模式,您可以用“*.c”來(lái)指定文件名列表。假設(shè)用戶的 C程序中包含一些不必要的轉(zhuǎn)向語(yǔ)句(goto語(yǔ)句),想要找到這些語(yǔ)句,可以用如下的命令來(lái)搜索并顯示所有包含 goto語(yǔ)句的代碼行:

            grep goto *.c

            用戶可以在命令行上鍵入搜索模式,也可以使用 -f 選項(xiàng)從指定文件中讀取要搜索的模式。在文件中,每個(gè)搜索模式占一行。如果經(jīng)常要搜索一組常見(jiàn)字符串時(shí),這個(gè)功能非常有用。在下面的例子中,用戶要在文件 exam 中搜索字符串 “editor” 和 “create”,就把要搜索的模式放置在文件 mypats 中,然后,grep 命令從文件 mypats 中讀取要搜索的模式。

            grep -f mypats exam
            posted on 2008-03-11 14:07 megax 閱讀(1509) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 轉(zhuǎn)貼收集
            精品999久久久久久中文字幕| 无码八A片人妻少妇久久| 日韩亚洲国产综合久久久| 无遮挡粉嫩小泬久久久久久久| 久久久久国产精品三级网| 久久精品水蜜桃av综合天堂| 性做久久久久久免费观看| 久久久久18| 久久久久久久99精品免费观看| 久久久久久综合网天天| 亚洲中文字幕无码久久精品1 | 久久精品国产久精国产一老狼| 99久久精品免费| 青青草原综合久久大伊人| 91精品国产综合久久精品| 久久精品无码一区二区三区日韩 | 久久精品免费网站网| 久久99国产精品尤物| 亚洲&#228;v永久无码精品天堂久久| 91久久精品视频| 色综合久久88色综合天天| 99久久99久久精品国产片| 青青草原综合久久| 久久青草国产手机看片福利盒子| 97精品久久天干天天天按摩| 亚洲伊人久久大香线蕉综合图片| 久久久久久久97| 精品综合久久久久久97超人| 久久精品一区二区三区不卡| 99久久综合国产精品二区| 久久中文字幕精品| 久久久久99精品成人片欧美 | 久久久久亚洲AV成人网人人网站| 伊人伊成久久人综合网777| 亚洲Av无码国产情品久久| 久久久久亚洲av综合波多野结衣| 久久99精品国产自在现线小黄鸭| 国产亚洲成人久久| 日韩人妻无码一区二区三区久久99| 久久精品国产久精国产思思| 久久99精品久久久久久水蜜桃|