首頁 運維 linux運維 在Linux中grep命令大全

在Linux中grep命令大全

Apr 09, 2019 pm 03:56 PM
linux

Linux系統中grep指令是一種強大的文本搜尋工具,它能使用正規表示式搜尋文本,並把匹 配的行列印出來。 grep全名為Global Regular Expression Print,表示全域正規表示式版本,它的使用權限是所有使用者。

    1.作用
    Linux系統中grep指令是一種強大的文字搜尋工具,它能使用正規表示式搜尋文本,並把匹 配的行列印出來。 grep全名為Global Regular Expression Print,表示全域正規表示式版本,它的使用權限是所有使用者。
    grep家族包括grep、egrep和fgrep。 egrep和fgrep的指令只跟grep有很小不同。 egrep是grep的擴展,支援更多的re元字符, fgrep就是fixed grep或fast grep,它們把所有的字母都看作單詞,也就是說,正則表達式中的元字符表示回其自身的字面意義,不再特殊。 linux使用GNU版本的grep。它功能更強,可以透過-G、-E、-F命令列選項來使用egrep和fgrep的功能。
    2.格式及主要參數
    grep [options]
    主要參數:  grep --help可檢視
        -c:只輸出資料列的計數。
        -i:不區分大小寫。
        -h:查詢多檔案時不顯示檔案名稱。
        -l:查詢多檔案時只輸出包含符合字元的檔案名稱。
        -n:顯示符合列及 行號。
        -s:不顯示不存在或無符合文字的錯誤訊息。
        -v:顯示不包含所有符合文字的行。
        --color=auto :可將找到的關鍵字部分加上顏色的顯示。
    pattern正規表示式主要參數:
    \: 忽略正規表示式中特殊字元的原有意義。
    ^:符合正規表示式的開始行。
    $: 符合正規表示式的結束行。
    \<:從符合正規表示 式的行開始。
    \>:到符合正規表示式的行結束。
    [ ]:單一字符,如[A]即A符合要求 。
    [ - ]:範圍,如[A-Z],即A、B、C一直到Z都符合要求 。
    .:所有的單一字元。
    *:所有字符,長度可為0。
    3.grep指令使用簡單實例
    itcast$ grep 'test' d*
    顯示所有以d開頭的檔案包含test的行

    itcast $aa bb 'test' test的行

    itcast $aa bb 'test' aa bb cc

    顯示在aa,bb,cc檔案中符合test的行。

    itcast $ grep ‘[a-z]\{5\}’ aa###    顯示所有包含每個字串至少有5個連續小寫字元的字串的行。 ###

    itcast $ grep 'w\(es\)t.*\1′ aa
        如果west被匹配,則es就儲存到記憶體中,並標記為1,然後搜尋任一字元(.* ),這些字元後面緊跟著另一個es(\1),找到就顯示該行。如果用egrep或grep -E,就不用」\號進行轉義,直接寫成’w(es)t.*\1′就可以了。
    4.grep指令使用複雜實例
    明確要求搜尋子目錄:
    grep -r
    或忽略子目錄
    grep -d skip## 或忽略子目錄
    grep -d skip## 透過管道將其轉到'less'上閱讀:
    itcast$ grep magic /usr/src/Linux/Documentation/* | less
    這樣,您就可以更方便地閱讀。
    有一點要注意,您必須提供一個檔案過濾方式(搜尋全部檔案的話用 *)。如果您忘了,’grep’會一直等著,直到程式中斷。如果您遇到了這樣的情況,按 ,然後再試。
    下面還有一些有趣的命令列參數:
    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 "abc\|xyz" testfile 表示過濾包含abc或xyz的行
    grep pattern1 files | grep pattern2 :顯示既符合21 的相符行。
    grep -n pattern files 即可顯示總行號資訊
    grep -c pattern files 即可找出總行數
    還有一些用於搜尋的特殊符號:\< 和\> 分別標註的開始與結尾。
    例如:
    grep man * 會匹配'Batman'、'manic'、'man'等,
    grep '\    grep '\' 只符合'man',而不是'Batman'或'manic'等其他的字串。
    '^': 指符合的字串在行首,
    '$': 指符合的字串在行尾,
    
#    用grep找出結構物grep -R "struct task_struct {
oask_struct {

" /usr/src 加-n可以顯示行號

PS1=$ 進入到家目錄在.bashrc    中【課程推薦:

Linux影片教學###】####

以上是在Linux中grep命令大全的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

如何解決Linux終端中查看Python版本時遇到的權限問題? 如何解決Linux終端中查看Python版本時遇到的權限問題? Apr 01, 2025 pm 05:09 PM

Linux終端中查看Python版本時遇到權限問題的解決方法當你在Linux終端中嘗試查看Python的版本時,輸入python...

在Linux終端中使用python --version命令時如何解決權限問題? 在Linux終端中使用python --version命令時如何解決權限問題? Apr 02, 2025 am 06:36 AM

Linux終端中使用python...

如何在macOS上將apscheduler定時任務配置為服務? 如何在macOS上將apscheduler定時任務配置為服務? Apr 01, 2025 pm 06:09 PM

在macOS上將apscheduler定時任務配置為服務在macOS平台上,如果你想將apscheduler定時任務配置為一個服務,類似於ngin...

c語言多線程的四種實現方式 c語言多線程的四種實現方式 Apr 03, 2025 pm 03:00 PM

語言多線程可以大大提升程序效率,C 語言中多線程的實現方式主要有四種:創建獨立進程:創建多個獨立運行的進程,每個進程擁有自己的內存空間。偽多線程:在一個進程中創建多個執行流,這些執行流共享同一內存空間,並交替執行。多線程庫:使用pthreads等多線程庫創建和管理線程,提供了豐富的線程操作函數。協程:一種輕量級的多線程實現,將任務劃分成小的子任務,輪流執行。

Linux系統自帶Python解釋器能刪除嗎? Linux系統自帶Python解釋器能刪除嗎? Apr 02, 2025 am 07:00 AM

關於Linux系統自帶Python解釋器的刪除問題許多Linux發行版在安裝時會預裝Python解釋器,它並非通過軟件包管理器�...

web.xml怎麼打開 web.xml怎麼打開 Apr 03, 2025 am 06:51 AM

要打開 web.xml 文件,可以使用以下方法:使用文本編輯器(如記事本或 TextEdit)使用集成開發環境(如 Eclipse 或 NetBeans)使用命令行編輯命令(Windows:notepad web.xml;Mac/Linux:open -a TextEdit web.xml)

Linux最好使用的是什麼? Linux最好使用的是什麼? Apr 03, 2025 am 12:11 AM

Linux最適合用作服務器管理、嵌入式系統和桌面環境。 1)在服務器管理中,Linux用於託管網站、數據庫和應用程序,提供穩定性和可靠性。 2)在嵌入式系統中,Linux因其靈活性和穩定性被廣泛應用於智能家居和汽車電子系統。 3)在桌面環境中,Linux提供了豐富的應用和高效的性能。

Debian Hadoop 兼容性怎樣 Debian Hadoop 兼容性怎樣 Apr 02, 2025 am 08:42 AM

DebianLinux以其稳定性和安全性著称,广泛应用于服务器、开发和桌面环境。虽然目前缺乏关于Debian与Hadoop直接兼容性的官方说明,但本文将指导您如何在Debian系统上部署Hadoop。Debian系统需求:在开始Hadoop配置前,请确保您的Debian系统满足Hadoop的最低运行要求,这包括安装必要的Java运行时环境(JRE)和Hadoop软件包。Hadoop部署步骤:下载并解压Hadoop:从ApacheHadoop官方网站下载您需要的Hadoop版本,并将其解

See all articles