• <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 閱讀(1526) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 轉(zhuǎn)貼收集
            久久久久亚洲av成人网人人软件 | 久久国产亚洲高清观看| 日本五月天婷久久网站| 久久久久久国产精品免费无码| 国产精品18久久久久久vr| 久久精品不卡| 成人资源影音先锋久久资源网| 蜜臀久久99精品久久久久久 | 久久精品无码av| 精品国产青草久久久久福利| 99热精品久久只有精品| 国内精品伊人久久久久777| 99久久精品九九亚洲精品| 一本色综合网久久| 久久亚洲高清综合| 国产精品一久久香蕉国产线看 | 伊人久久精品无码av一区| 国产精品青草久久久久福利99| 久久ZYZ资源站无码中文动漫| 亚洲欧美日韩精品久久亚洲区| 国产精品久久久久影视不卡| 亚洲欧美成人综合久久久 | 久久久国产精华液| 天天久久狠狠色综合| 国产精品久久午夜夜伦鲁鲁| 亚洲精品乱码久久久久久蜜桃不卡 | 国产∨亚洲V天堂无码久久久| 久久精品无码一区二区WWW| 久久精品国产国产精品四凭| 久久精品国产亚洲沈樵| 国产午夜福利精品久久2021| 国产精品久久久久jk制服| 久久99国产精品久久99| 国产精品久久成人影院| 国产精品久久久久久福利漫画| 久久久久AV综合网成人| 久久久久99精品成人片欧美| 国产精品久久久久久久 | 久久久国产视频| 综合久久国产九一剧情麻豆| 日产精品久久久久久久|