在 Linux 中使用 grep 找特定開始字和結束字的方法

在 Linux 中使用 grep 找特定開始字和結束字的方法

更新於 發佈於 閱讀時間約 2 分鐘

語法:

grep '^<starting-character>.*<ending-character>$' <file>


grep 指令可以使用特殊字元的組合: 星號 ( * )、( $ ) 和 ( ^ )來過濾搜尋的內容。在我們的範例中,要使用 grep搜尋以特定字元開頭和結尾的內容,例如搜尋以“L”開頭並以“d”結尾的內容:

grep '^L.*d$' grepfile.txt
raw-image

“^”表示行或句子將從符號“^”後提供的指定字元(L)開始,“$”表示句子或行將從符號“^”之後提供的字符結束在符號“ $」之前,本例為「d」。畫面應該會顯示該符合條件的特定句子或行(如果文字檔案中存在這樣的開頭與結尾)。


另一個例子,我們在文字檔案中搜尋以字元“T”開頭並以字元“.”結尾的句子或行,現在使用的 grep 命令將是:

grep '^T.*.$' grepfile.txt
raw-image


同樣的方法可以同時搜尋多筆文件:

grep '^T.*.$' grepfile.txt grepfile2.txt
raw-image

注意到,內容會同時顯示出搜尋的文件中符合條件的語句。


更多時候,我們只是想要搜尋開頭符合條件的內容(開頭是L的內容):

grep '^L' grepfile.txt
raw-image

一樣的可以用在多個檔案的搜尋:

grep '^L' grepfile.txt grepfile2.txt
raw-image



只搜尋特定字元結尾的內容:

grep '<ending-character>$' <file>


例如,以e結尾的:

grep 'e$' grepfile2.txt
raw-image


多檔搜尋也是一樣的:

grep 'e$' grepfile2.txt grepfile.txt
raw-image









avatar-img
iBonnie_愛邦尼
5會員
78內容數
記錄生活與技術的小細節
留言
avatar-img
留言分享你的想法!
iBonnie_愛邦尼 的其他內容
nano /etc/security/faillock.conf ======================= audit silent no_log_info deny = 3 fail_interval = 3600 unlock_time = 3600 even_deny_root root
首先檢查DNS 通常在這邊: sudo nano /etc/resolv.conf 如果沒看到熟悉的168.95.1.1,8.8.8.8這種 就加一下吧 TRY一下 可以就正常了 如果還不行 就把http://tw.archive.ubuntu.com 換成 http://arch
眾所皆知,Server版本是沒有內建桌面的。但有時候我們就是想要裝了server後又需要桌面,怎麼辦呢? 開始吧: sudo apt update sudo apt upgrade Display Manager安裝與選擇: GDM3、SLiM、LightDM都是選項; 我們用 SLiM
nano /etc/security/faillock.conf ======================= audit silent no_log_info deny = 3 fail_interval = 3600 unlock_time = 3600 even_deny_root root
首先檢查DNS 通常在這邊: sudo nano /etc/resolv.conf 如果沒看到熟悉的168.95.1.1,8.8.8.8這種 就加一下吧 TRY一下 可以就正常了 如果還不行 就把http://tw.archive.ubuntu.com 換成 http://arch
眾所皆知,Server版本是沒有內建桌面的。但有時候我們就是想要裝了server後又需要桌面,怎麼辦呢? 開始吧: sudo apt update sudo apt upgrade Display Manager安裝與選擇: GDM3、SLiM、LightDM都是選項; 我們用 SLiM