當前位置:首頁 » 操作系統 » greplinux

greplinux

發布時間: 2022-01-08 16:12:13

『壹』 linux中「grep」和「find」的區別是什麼

這是兩個不同的命令,關於grep:

Linux系統中grep命令是一種強大的文本搜索工具,它能使用正則表達式搜索文本,並把匹 配的行列印出來。grep全稱是Global Regular Expression Print,表示全局正則表達式版本,它的使用許可權是所有用戶。

而linux下的find

功能:在目錄結構中搜索文件,並執行指定的操作。此命令提供了相當多的查找條件,功能很強大。

語法:find 起始目錄 尋找條件 操作

說明:find命令從指定的起始目錄開始,遞歸地搜索其各個子目錄,查找滿足尋找條件的文件並對之採取相關的操作。

所以簡單點說說,grep是查找匹配條件的行,find是搜索匹配條件的文件。

『貳』 Linux裡面grep作用是什麼

grep是Linux中很常用的命令,用於查找文件中符合條件的字元串,如果查到,會把文件的那一列顯示出來。
支持通配符,支持正則表達式,功能強大。

『叄』 linux怎樣用grep過濾

你在配置文件里不可以用grep命令來過濾。grep只能在目錄文件上才能用。

『肆』 linux系統grep

我記得 Linux 下面,就算是在 " 或者 ' 裡面的類似參數的那種樣子的字元串,依然會被識別成命令的參數,和其他的 --xxxxx 一起進行識別。
只不過被 " 或者 ' 包起來的東西,會被當作一個整體進行識別。

如果需要這種的數據不去做 --xxxx 一樣的參數識別,可以在他的前面加 -- 來進行分割,-- 之前的 --xxxxx 參數都會被繼續的識別,在命令見到 -- 之後,就不會再識別 --xxxxx 的參數而是當作非 --xxxxx 的參數進行處理了。
對了 -- 好像對 -x 這種參數也有效。

『伍』 linux中的grep怎麼用~

grep abc /Desktop/AA 功能就是在桌面AA文檔中查找abc的文本 如果有則將包含有AA的行全部顯示
AA這一文檔必須為文本類型的,下面是參照,
grep指令用於查找內容包含指定的範本樣式的文件,如果發現某文件的內容符合所指定的範本樣式,預設grep指令會把含有範本樣式的那一列顯示出來。若不指定任何文件名稱,或是所給予的文件名為「-」,則grep指令會從標准輸入設備讀取數據。

參 數:
-a或--text 不要忽略二進制的數據。
-A<顯示列數>或--after-context=<顯示列數> 除了顯示符合範本樣式的那一列之外,並顯示該列之後的內容。
-b或--byte-offset 在顯示符合範本樣式的那一列之前,標示出該列第一個字元的位編號。
-B<顯示列數>或--before-context=<顯示列數> 除了顯示符合範本樣式的那一列之外,並顯示該列之前的內容。
-c或--count 計算符合範本樣式的列數。
-C<顯示列數>或--context=<顯示列數>或-<顯示列數> 除了顯示符合範本樣式的那一列之外,並顯示該列之前後的內容。
-d<進行動作>或--directories=<進行動作> 當指定要查找的是目錄而非文件時,必須使用這項參數,否則grep指令將回報信息並停止動作。
-e<範本樣式>或--regexp=<範本樣式> 指定字元串做為查找文件內容的範本樣式。
-E或--extended-regexp 將範本樣式為延伸的普通表示法來使用。
-f<範本文件>或--file=<範本文件> 指定範本文件,其內容含有一個或多個範本樣式,讓grep查找符合範本條件的文件內容,格式為每列一個範本樣式。
-F或--fixed-regexp 將範本樣式視為固定字元串的列表。
-G或--basic-regexp 將範本樣式視為普通的表示法來使用。
-h或--no-filename 在顯示符合範本樣式的那一列之前,不標示該列所屬的文件名稱。
-H或--with-filename 在顯示符合範本樣式的那一列之前,表示該列所屬的文件名稱。
-i或--ignore-case 忽略字元大小寫的差別。
-l或--file-with-matches 列出文件內容符合指定的範本樣式的文件名稱。
-L或--files-without-match 列出文件內容不符合指定的範本樣式的文件名稱。
-n或--line-number 在顯示符合範本樣式的那一列之前,標示出該列的列數編號。
-q或--quiet或--silent 不顯示任何信息。
-r或--recursive 此參數的效果和指定「-d recurse」參數相同。
-s或--no-messages 不顯示錯誤信息。
-v或--revert-match 反轉查找。
-V或--version 顯示版本信息。
-w或--word-regexp 只顯示全字元合的列。
-x或--line-regexp 只顯示全列符合的列。
-y 此參數的效果和指定「-i」參數相同。

『陸』 Linux下Grep命令的詳細使用方法

在linux中grep命令是非常有用的,它和管道(|)配合使用,非常強大,用於搜索文本文件.如果想要在幾個文本文件中查找一字元串,可以使用『grep』命令。『grep』在文本中搜索指定的字元串。
假設您正在『/usr/src/linux/Documentation』目錄下搜索帶字元串『magic』的文件:

$ grep magic /usr/src/linux/Documentation/*
sysrq.txt:* How do I enable the magic SysRQ key?
sysrq.txt:* How do I use the magic SysRQ key?

其中文件『sysrp.txt』包含該字元串,討論的是 SysRQ 的功能。

默認情況下,『grep』只搜索當前目錄。如果此目錄下有許多子目錄,『grep』會以如下形式列出:

grep: sound: Is a directory

這可能會使『grep』的輸出難於閱讀。這里有兩種解決的辦法:

明確要求搜索子目錄:grep -r
或忽略子目錄:grep -d skip
當然,如果預料到有許多輸出,您可以通過 管道 將其轉到『less』上閱讀:

$ grep magic /usr/src/linux/Documentation/* | less

這樣,您就可以更方便地閱讀。

有一點要注意,您必需提供一個文件過濾方式(搜索全部文件的話用 *)。如果您忘了,『grep』會一直等著,直到該程序被中斷。如果您遇到了這樣的情況,按 <CTRL c> ,然後再試。

下面是一些有意思的命令行參數:

grep -i pattern files :不區分大小寫地搜索。默認情況區分大小寫,
grep -l pattern files :只列出匹配的文件名,
grep -L pattern files :列出不匹配的文件名,
grep -w pattern files :只匹配整個單詞,而不是字元串的一部分(如匹配『magic』,而不是『magical』),
grep -C number pattern files :匹配的上下文分別顯示[number]行,
grep pattern1 | pattern2 files :顯示匹配 pattern1 或 pattern2 的行,
grep pattern1 files | grep pattern2 :顯示既匹配 pattern1 又匹配 pattern2 的行。
這里還有些用於搜索的特殊符號:

\< 和 \> 分別標注單詞的開始與結尾。
例如:
grep man * 會匹配 『Batman』、『manic』、『man』等,
grep '\<man' * 匹配『manic』和『man』,但不是『Batman』,
grep '\<man\>' 只匹配『man』,而不是『Batman』或『manic』等其他的字元串。
'^':指匹配的字元串在行首,
'$':指匹配的字元串在行尾,
如果您不習慣命令行參數,可以試試圖形界面的『grep』,如 reXgrep 。這個軟體提供 AND、OR、NOT 等語法,還有漂亮的按鈕 :-) 。如果您只是需要更清楚的輸出,不妨試試 fungrep 。

『柒』 linux grep是什麼

Linux系統中grep命令是一種強大的文本搜索工具,它能使用正則表達式搜索文本,並把匹 配的行列印出來。grep全稱是Global Regular Expression Print,表示全局正則表達式版本,它的使用許可權是所有用戶。

『捌』 linux中用grep查找文件

本來可以直接查找,不過linux就是靈活……
所以 可以 ls -| grep 寫上要查的名,存在就給你顯示出來
ls -l 可以用ll代替,靈活吧~~~

『玖』 linux命令里,grep * 是什麼意思

任意一個位元組 . 與重復位元組 *
這兩個符號在正則表達式的意義如下:
. (小數點):代表『一定有一個任意位元組』的意思;
* (星號):代表『重復前一個字元, 0 到無窮多次』的意思,為組合形態

假設我需要找出 g??d 的字串,亦即共有四個位元組, 起頭是 g 而結束是 d ,我可以這樣做:
[root@www ~]# grep -n 'g..d' regular_express.txt
1:"Open Source" is a good mechanism to develop programs.
9:Oh! The soup taste good.
16:The world <Happy> is the same with "glad".

因為強調 g 與 d 之間一定要存在兩個位元組,因此,第 13 行的 god 與第 14 行的 gd 就不會被列出來啦!

如果我想要列出有 oo, ooo, oooo 等等的數據, 也就是說,至少要有兩個(含) o 以上,該如何是好?
因為 * 代表的是『重復 0 個或多個前面的 RE 字元』的意義, 因此,『o*』代表的是:『擁有空位元組或一個 o 以上的位元組』,因此,『 grep -n 'o*' regular_express.txt 』將會把所有的數據都列印出來終端上!
當我們需要『至少兩個 o 以上的字串』時,就需要 ooo* ,亦即是:
[root@www ~]# grep -n 'ooo*' regular_express.txt
1:"Open Source" is a good mechanism to develop programs.
2:apple is my favorite food.
3:Football game is not use feet only.
9:Oh! The soup taste good.
18:google is the best tools for search keyword.
19:goooooogle yes!

如果我想要字串開頭與結尾都是 g,但是兩個 g 之間僅能存在至少一個 o ,亦即是 gog, goog, gooog.... 等等,那該如何?
[root@www ~]# grep -n 'goo*g' regular_express.txt
18:google is the best tools for search keyword.
19:goooooogle yes!

如果我想要找出 g 開頭與 g 結尾的行,當中的字元可有可無
[root@www ~]# grep -n 'g.*g' regular_express.txt
1:"Open Source" is a good mechanism to develop programs.
14:The gd software is a library for drafting programs.
18:google is the best tools for search keyword.
19:goooooogle yes!
20:go! go! Let's go.

因為是代表 g 開頭與 g 結尾,中間任意位元組均可接受,所以,第 1, 14, 20 行是可接受的喔! 這個 .* 的 RE 表示任意字元是很常見的.

『拾』 linux中grep和find的區別

1.
linux中的find等同與win中的搜索文件。
find是在磁碟/分區中找到文件,可以配type可以配size
time等,通過文件名或文件大小或訪問時間找到指定文件。
2.
linux中的grep等同與win中的findstr命令。可以在一個txt文本中截取到有特定關鍵字的行,並顯示出來。
grep也可以通過關鍵字,在一個文件夾下查找多個有這些關鍵字的文件,並生成結果。
3.
可以詳細參考find命令在網路的文庫文檔
http://wenku..com/view/5e4070160b4e767f5acfce0b.html

熱點內容
aspnet資料庫路徑 發布:2024-12-26 11:47:35 瀏覽:973
皮卡堂怎麼找到以前玩過的伺服器 發布:2024-12-26 11:45:59 瀏覽:123
瀏覽器如何變電腦版安卓 發布:2024-12-26 11:44:36 瀏覽:179
vivo微信怎麼加密碼鎖 發布:2024-12-26 11:34:14 瀏覽:403
對蟻群演算法 發布:2024-12-26 11:15:53 瀏覽:808
tiobe編程語言社區 發布:2024-12-26 10:48:11 瀏覽:425
日立存儲微碼升級 發布:2024-12-26 10:43:48 瀏覽:153
如何建立家庭網站伺服器 發布:2024-12-26 10:40:46 瀏覽:186
安卓顯示e是什麼意思 發布:2024-12-26 10:35:13 瀏覽:706
電磁爐編程 發布:2024-12-26 10:30:51 瀏覽:97