• <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)鍵詞,您可以用它們來搜索文件中包含的這些關(guān)鍵詞。編寫程序時(shí),可以用它來尋找某一個(gè)函數(shù),或是相關(guān)的詞組。grep 命令的搜索功能比 fgrep 強(qiáng)大,因?yàn)?grep 命令的搜索模式可以是正則表達(dá)式,而 fgrep 卻不能。

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

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

            語法:  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ū)分大小寫。 -h 在查找多個(gè)文件時(shí),指示grep不要將文件名加入到輸出之前。 -l 顯示首次匹配串所在的文件名并用換行符將其隔開。    當(dāng)在某文件中多次出現(xiàn)匹配串時(shí),不重復(fù)顯示此文件名。 -n 在輸出前加上匹配串所在行的行號(hào)(文件首行行號(hào)為1)。 -v 只顯示不包含匹配串的行。 -x 只顯示整行嚴(yán)格匹配的行。 -e expression 指定檢索使用的模式。用于防止以“-”開頭的模式被解釋為命令選項(xiàng)。 -f expfile 從expfile文件中獲取要搜索的模式,一個(gè)模式占一行。

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

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

            grep ’text file’ example

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

            grep data *

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

            grep goto *.c

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

            grep -f mypats exam
            posted on 2008-03-11 14:07 megax 閱讀(1519) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 轉(zhuǎn)貼收集
            AAA级久久久精品无码片| 亚洲综合伊人久久大杳蕉| 久久99免费视频| 久久九九青青国产精品| 欧美成a人片免费看久久| 免费一级做a爰片久久毛片潮| 一本久久a久久精品亚洲| 国产91色综合久久免费分享| 久久久精品久久久久特色影视 | 久久久久亚洲AV成人网人人网站| 亚洲精品乱码久久久久久中文字幕| 久久国产一区二区| 人妻丰满?V无码久久不卡| 日韩av无码久久精品免费| 观看 国产综合久久久久鬼色 欧美 亚洲 一区二区 | 久久久久综合国产欧美一区二区| 精品久久亚洲中文无码| 久久国产精品一区二区| 亚洲中文久久精品无码| 久久久久亚洲AV无码专区桃色| 日韩精品无码久久久久久| 亚洲精品美女久久久久99小说| 精品久久一区二区| 久久久久久毛片免费播放| 久久国产三级无码一区二区| 99国产精品久久| 热re99久久6国产精品免费| 亚洲欧美国产日韩综合久久| 91久久九九无码成人网站| 久久香蕉超碰97国产精品| 久久久久久久精品妇女99| 久久久久国产亚洲AV麻豆| 99久久精品免费国产大片| 久久狠狠色狠狠色综合| 久久国产高清字幕中文| 99国产欧美精品久久久蜜芽| 亚洲国产欧美国产综合久久| 亚洲精品国产字幕久久不卡| 国产成人无码精品久久久性色| 中文字幕无码久久人妻| 久久免费视频1|