您好,登錄后才能下訂單哦!
本篇內容主要講解“Linux fgrep命令怎么使用”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Linux fgrep命令怎么使用”吧!
fgrep命令 是用來搜索 file 參數指定的輸入文件(缺省為標準輸入)中的匹配模式的行。
為文件搜索文字字符串
fgrep 命令于 grep 和 egrep 命令不同,因為它搜索字符串而不是搜索匹配表達式的模式。fgrep 命令使用快速的壓縮算法。$, *, [, |, (, )和\等字符串被 fgrep 命令按字面意思解釋。這些字符并不解釋為正則表達式,但它們在 grep 和 egrep 命令中解釋為正則表達式。因為這些字符對于 shell 有特定的含義,完整的字符串應該加上單引號‘ ... ’。. 如果沒有指定文件, fgrep 命令假定標準輸入。一般,找到的每行都復制到標準輸出中去。如果不止一個輸入文件,則在找到的每行前打印文件名。
fgrep 命令和帶 -F 標志的 grep命令是一樣的但出錯和用法消息不同-s 標志功能也不同。
每行限制在 2048 個字節。
段落(-p 標志下)目前限制在5000個字符的長度。
不要在特定的文件中運行 grep 命令,因為會產生不可預料的結果。
輸入行不能包含空字符。
輸入文件應該以換行字符結尾。
雖然可以同時指定很多標志,但某些標志會覆蓋其余的標志。例如,如果同時指定 -l 和 -n ,只有文件名寫入到標準輸出中去。
fgrep(選項)(參數)
-b:在找到的每行之前添加行所在的塊編號。使用此標志有助于按照上下文查找磁盤塊號碼。-b 標志不能用于標準輸入或者管道輸入。 -c:僅顯示匹配行的計數。 -e 模式:指定模式。這個工作模式很簡單,但當此模式以 a-(減號) 開頭時卻是很有用的。 -f StringFile:指定包含字符串的文件。 -h:當多個文件被處理時隱藏文件名。 -i:當進行比較時忽略字母的大小寫。 -l:只列出包含匹配行的文件名(一次)。文件名之間用換行符分隔。 n:將文件中每行的相對行號置于行前。 -pSeparator:顯示包含匹配行的整個段落。段落之間將按照Separator參數指定的段落分隔符加以分隔,這些分隔符是與搜索模式有著相同格式的模式。包含段落分隔符的行將僅用作分隔符;它們不會被包含在輸出中。缺省的段落分隔符是空白行。 -q:禁止所有寫入到標準輸出的操作,不管是否為匹配行。如果選中輸入行,以 0 狀態退出。 -s:僅顯示出錯消息。這在檢查狀態時很有用。 -v:顯示除了匹配特定模式的行以外的所有行。 -w:執行單詞搜索。 -x:顯示匹配模式的行,要求無額外的字符。 -y:當進行比較時忽略字符的大小寫。
此命令返回以下出口值:
0 找到匹配項。 1 未找到匹配項。 >1 發現語法錯誤,或者文件不可訪問(即使找到了匹配項)。
搜索幾個文件中的一個簡單字符串:
fgrep strcpy *.c
在當前目錄下所有以 .c 字符串結尾的文件中搜索字符串 strcpy。
計數匹配某模式的行數:
fgrep -c 『{』pgm.cfgrep -c 『}』pgm.c
顯示在 pgm.c 中包含左括號和右括號的行的數目。
如果在您的 C 程序中一行中沒有包含多于一個 { (左括號) 或者 } (右括號),并且括號正確匹配,那么這兩個數字將是一樣的。如果這兩個數字不一樣,您可以將包含括號的行按照他們在文件中的位置順序顯示出來,使用以下命令:
egrep {\|} pgm.c
顯示包含某模式的文件名:
fgrep -l strcpy *.c
搜索當前目錄下以 .c 結尾的文件,然后顯示包含 strcpy 字符串的文件名。
到此,相信大家對“Linux fgrep命令怎么使用”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。