Linux Grep 搜尋字串用法與範例 ShengYu Talk

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

Linux grep 搜尋字串用法與範例 | ShengYu Talk

首頁
Python教學
C/C++教學
歸檔
標籤
Projects
關於我

首頁 Python教學 C/C++教學 歸檔 標籤 Projects 關於我

    

ShengYu Talk

2020-05-07

Linux grep 搜尋字串用法與範例

本篇 ShengYu 介紹 Linux grep 搜尋字串用法與範例,grep 通常用來搭配其它指令來搜尋字串,


例如 grep 搭配 cat 來搜尋檔案裡的特定字串,grep 算是 Linux 必學指令,學會這招讓工作更快
速輕鬆。

以下的 Linux grep 用法與範例將分為這幾部分,

將 cat 的輸出導向 grep 搜尋字串


使用 grep 指令排除一個字串或多個字串
grep 忽略大小寫
grep 搜尋子資料夾
grep 顯示彩色輸出
grep 顯示行數
grep 顯示匹配結果的前後內容
grep 搜尋內容符合的檔案 pipe 給 sed 取代文字
grep 搭配正規表達式

那我們開始吧!

https://shengyu7697.github.io/linux-grep/[2023/2/24 上午 01:13:10]
Linux grep 搜尋字串用法與範例 | ShengYu Talk

將 cat 的輸出導向 grep 搜尋字串

以下示範用 cat 將 nginx.log 檔案內容輸出並導向 grep 搜尋字串

1 cat nginx.log | grep "GET"

使用 grep 指令排除一個字串或多個字串

grep 排除字串的話要使用 -v 這個選項,例如在 nginx.log 檔案裡排除 GET 這個字串的結果

1 grep -v 'GET' nginx.log

grep 忽略大小寫

grep 忽略大小寫要使用 -i 這個選項,例如 Hello 跟 hello 都要能被找到的話就可以這樣寫,

1 grep -i "Hello" nginx.log

這樣不管是 Hello 或 hello 還是 HELLO 各種大小寫變化都能找得到。

grep 搜尋子資料夾

grep 要搜尋子資料夾可以加入 -r 遞迴這個選項跟一個 * ,這樣就不會只搜尋當層資料夾,


連子資料夾都會去搜尋,

1 grep -r "Hello" *

grep 顯示彩色輸出

grep 顯示彩色輸出要用 --color 這個參數

1 grep "http" log.txt --color

有顏色輸出能幫助你的眼球更快的找到目標文字。

https://shengyu7697.github.io/linux-grep/[2023/2/24 上午 01:13:10]
Linux grep 搜尋字串用法與範例 | ShengYu Talk

grep 顯示行數

grep 顯示行數要用 -n 這個參數

1 grep -n "http" log.txt

如果要用 find 指令找檔案後將結果 pipe 給 grep 搜尋的話,用法範例如下,

1 find ./ -iname "*.txt" -type f | xargs grep -n "http"

grep 顯示匹配結果的前後內容

grep 顯示匹配結果的後5行內容,要用 -A 參數,after 的意思,

1 grep "http" log.txt -A 5

grep 顯示匹配結果的前5行內容,要用 -B 參數,before 的意思,

1 grep "http" log.txt -B 5

grep 搜尋內容符合的檔案 pipe 給 sed 取代文字

grep 搜尋內容符合的檔案 pipe 給 sed 取代文字的方式如下,範例內容是假設我要搜尋檔案內容


有 http 的字串找出來後將這些檔案名稱 pipe 給 sed 取代文字,將這些檔案裡的 http 全部取代成
https,

1 # Linux
2 grep -ri "http" * -l | xargs sed -i 's/http/https/g'
3 # macOS
4 grep -ri "http" * -l | xargs sed -i "" 's/http/https/g'

grep 搭配正規表達式

grep 顯示 abc 開頭,

https://shengyu7697.github.io/linux-grep/[2023/2/24 上午 01:13:10]
Linux grep 搜尋字串用法與範例 | ShengYu Talk

1 grep ^abc log.txt

grep 顯示 abc 結尾,

1 grep abc$ log.txt

grep 顯示數字,例如 abc0 ~ abc9 開頭,

1 grep abc[0-9] log.txt

其它相關文章推薦
Linux 常用指令教學懶人包
Linux grep/ack/ag 搜尋字串用法與範例
Linux ag 搜尋字串用法與範例(比 grep 還快)
Linux cut 字串處理用法與範例
Linux sed 字串取代用法與範例
Linux find 尋找檔案/尋找資料夾用法與範例
Linux kill 指令砍掉指定的 process name

#Linux #Linux Command #進階指令  Share

NEWER
Python 計算 dict 字典長度

OLDER
LeetCode C++ two sum 兩數之和

精選文章

https://shengyu7697.github.io/linux-grep/[2023/2/24 上午 01:13:10]
Linux grep 搜尋字串用法與範例 | ShengYu Talk

Python 基礎教學目錄
C/C++ 入門教學目錄
Linux 常用指令教學懶人包

最新文章

Ubuntu Android Emulator 模擬器的 image 大小


Java File 用法與範例
JavaScript onclick event submit form 用法範例
Android Java 取得 build date 當下編譯日期時間
6 種查詢 SQLite 版本的方法

粉絲專頁

ShengYu
追蹤粉絲專頁 141 位追蹤者

分類

Arduino (4)
C/C++教學 (166)
Github (14)
Git教學 (20)
OpenCV教學 (8)
Projects (6)
Python教學 (226)
Qt教學 (7)

https://shengyu7697.github.io/linux-grep/[2023/2/24 上午 01:13:10]
Linux grep 搜尋字串用法與範例 | ShengYu Talk

© 2023 ShengYu
Powered by Hexo

https://shengyu7697.github.io/linux-grep/[2023/2/24 上午 01:13:10]

You might also like