1. 程式人生 > >17.三劍客之grep

17.三劍客之grep

應用:對文字進行字元查詢、篩選,利用正則表示式對檔案,進行全域性搜尋。
格式:grep [選項] [檔案]

常用選項:
-c :統計匹配結果一共多少行
-i :忽略大小寫
-n :顯示行號
-v :反向選擇——僅列出沒有“關鍵詞”的行。
-o :只顯示匹配到的內容,不是整行打印出來
-e :多條件匹配字串,條件之間或關係,條件之間空格隔開
-w :預設匹配是不精確的,-w表示精確匹配,除了數字下劃線分割的,都是單詞
-q :不管匹配是否成功,都不顯示,若想知道是否匹配成功,配合echo $?
-Bn :n代表數字,顯示符合條件的行,同時也顯示前n行內容
-An :n代表數字,顯示符合條件的行,同時也顯示後n行內容
-Cn :n代表數字,顯示符合條件的行,同時也顯示前後n行內容
-E:使用正則表示式,等價於egrep

例子解釋:
grep -n ‘the’ filename —在檔案中查詢’the’
grep -vn ‘the’ filename —在檔案中查詢不包含’the’的行
grep -in ‘the’ filename —-在檔案中查詢’the’,不分大小寫
grep -n ‘[^a-z]oo’ filename —查詢‘’oo’前面不包含小寫字母的.[^A-Z]不要大寫字母的
grep -n ‘[0-9]’ filename — 查詢有數字的一行
grep -n ‘^the’ filename — 查詢the開頭的行
grep -n ‘^[a-z]’ filename — 查詢小寫字母開頭的行
grep -n ‘^[^a-zA-Z]’ filename — 查詢不要字母開頭的
grep -v ‘^#’ filename —去掉註釋
grep -i -c ‘test’ filename —-統計有test字串,不區分大小寫,總行數

實用例子:
1.查詢/etc/passwd檔案中當前使用者

#grep "$USER" /etc/passwd
#grep "$(whoami)" /etc/passwd

2.忽略大小寫,並顯示行號

#grep -in "ROot" /etc/passwd

3.匹配成功的行數

#grep -ic "ROot" /etc/passwd

4.單純列印匹配成功的字串,而不是匹配成功所在的行

#grep -o "root" /etc/passwd
root
root
root
root

5.-q應用

[[email protected] data]#grep -q "root" /etc/passwd
[
[email protected]
data]#echo $? 0 #0代表匹配成功 非0則是匹配不成功

6.顯示 匹配成功的後3行,並顯示行號,使用-n選項的時候,一定到放在A前面,比如:-nA -An(會報錯)

#grep -nA 3 "root" /etc/passwd  後3行
#grep -nB 3 "root" /etc/passwd  前3行
#grep -nC 3 "root" /etc/passwd  前後3行

7.檢視172.16.34.0/24網段 有哪些IP開啟著。

#nmap -v -sP 172.16.34.0/24 |grep -B1 "up"| grep "Nmap scan"|cut -d" " -f5
nmap命令掃描哪些ip是開啟著。

8.多條件匹配-e選項使用,或者關係,沒有執行順序關係

[[email protected] data]#grep -e "root" -e "/bin/bash" /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
chen:x:1000:1000:chen:/home/chen:/bin/bash
nginx:x:1004:1005::/home/nginx:/bin/bash
varnish:x:1003:1002::/home/varnish:/bin/bash

9.精確匹配-w,帶下劃線和數字的不算一個單詞,所以不匹配成功

[[email protected] data]#echo "abc"|grep -w "abc"
abc
[[email protected] data]#echo "abc 123"|grep -w "abc"
abc 123
[[email protected] data]#echo "abc:123"|grep -w "abc"
abc:123
[[email protected] data]#echo "abc_123"|grep -w "abc"   
[[email protected] data]#echo "abc-123"|grep -w "abc"
abc-123

10.從1-100中包含9數字的有多少個。

#seq 100|grep 9|wc -l

11.取2個檔案交集部分

#grep -f f1 f2

相關推薦

17.三劍客grep

應用:對文字進行字元查詢、篩選,利用正則表示式對檔案,進行全域性搜尋。 格式:grep [選項] [檔案] 常用選項: -c :統計匹配結果一共多少行 -i :忽略大小寫 -n :顯示行號 -v :反向選擇——僅列出沒有“關鍵詞”的行。 -o :只

謝煙客---------Linux文本處理三劍客grep

linux基礎Linux之文本處理三劍客介紹 awk 名稱得自於它的創始人阿爾佛雷德·艾侯、彼得·溫伯格和布萊恩·柯林漢姓氏的首個字母,它具備了一個完整的語言所應具有的幾乎所有精美特性,AWK是一個解釋器,三位創建者已將它正式定義為“樣式掃描和處理語言”。它允許您創建簡短的程序,這些程序讀取輸入文件、為

Linux系統命令三劍客Grep

linux 命令 grep命令名稱:grep命令作用: 文本查找或搜索工具詳細說明: 同樣可以配合正則表達式來搜索文本,並將匹配的行打印輸出 也可用於過濾與搜索特定字符串,使用十分靈活常用參數:-a #不要忽略二進制數據-A #除了顯示符合範本樣式的那一行之外,並顯示該行之後的內容-b

文本處理三劍客 grep

digi pro 文件路徑 his 1-1 基本 文本搜索工具 ... 大寫 grep簡介grep(Global search REgular expression and Print out the line)是Linux上的文本處理三劍客之一,另外兩個是sed和awk.

三劍客——grep

升序 自動 oba per /usr 單個 行動 document cat 簡介:   grep(global search regular expression(RE) and print out the line,全面搜索正則表達式並把行打印出來)是一種強大的文本搜索工

linux文本處理三劍客grep命令詳解

gawk 軟件 upper edit 進制 使用 第一個 空格 earch Linux文本處理三劍客之grep grep:文本過濾(模式:pattern)工具 grep, egrep, fgrep(不支持正則表達式搜索) sed:stream editor,

Linux 學習總結(十九)正則三劍客grep

grepgrep 過濾器,egrep可以理解為grep的升級版1 格式:grep [-cinvABC] ‘word‘ filename-c:統計符合要求的行數例如 : grep -c ‘root‘ /etc/passwdgrep -c ‘‘ /etc/passwd 統計文件總行數-i:忽略大小寫-n:行號輸出

三劍客grep

需求 呵呵 set 例子 當前 搜索 sea war 目錄 簡介 grep (global search regular expression(RE) and print out the line,全面搜索正則表達式並把行打印出來)是一種強大的文本搜索工具,它能使用正則表達

Linux命令三劍客grep常用參數詳解

grep 三劍客 linux 系統 Linux命令三劍客之grep介紹grep在三劍客中排行老三,是一個簡單文本過濾命令,除了grep本身外還有兩種擴展grep。grep:文本過濾(基礎版)egrep:擴展文本過濾fgrep:快速文本過濾語法語法:grep [option...] patter

Linux文本處理三劍客---grep

Linux 命令 grep grep grep: Global search REgular expression and Print out the line作用:文本搜索工具,根據用戶指定的“模式”對目標文本逐行進行匹配檢查;打印匹配到的行模式:由正則表達式字符及文本字符所編寫的過

文本處理三劍客grep

grep match 字母 res 擴展的正則表達式 文件中 string digi 形式 grep系:grep:Global search Regular Expression and Print out the line.利用正則表達式進行全局搜索並將匹配到的行顯示出來

文本三劍客grep加vim編輯器

lease 所在 替換 三劍客 禁用 red 直接 打開文件 pre 好幾周沒寫博客了,今天又時間就隨便寫了點。 linux文本處理三劍客: grep:文本過濾工具 grep ,egrep,fgrep(用來打印各種行,patten模式) 它需要標準輸入,CentOS6裏也

01-shell文字處理三劍客grep

開篇:哈嘍,今天我想寫寫shell程式設計,打算平均一天一篇吧,這樣一個月後就可以進步比較多。 先從shell文字處理三劍客grep、sed、awk開始。聽說啊,要是我不會這個命令,就不好意思說自己會shell程式設計。 1 grep是什麼意思? grep: Global se

文字處理三劍客grep

grep:根據使用者指定的“模式”對目標文字進行匹配檢查,列印匹配到的行 模式:用正則表示式字元所編寫的過濾條件 grep [option] pattern [file...] --color=auto:對匹配到的文字著色顯示 -v:顯示不能夠被pattern匹配到的行 -

Linux文本處理三劍客grep

劃線 指定 shu div 技術分享 日常 memfree 固定 過濾 簡介 grep命令,用於在一個文本文件中或者從STDIN中,根據用戶給出的模式(pattern)過濾出所需要的信息。 grep以及三劍客中的另外兩個工具sed和awk都是基於行處理的,它們會一行行讀入數

linux三劍客grep

指定 inux 字符 行數 單獨 次數 如果 統計 結果 為了方便以後回顧,將grep的常用選項總結如下: --color=auto 或者 --color:表示對匹配到的文本著色顯示 -i:在搜索的時候忽略大小寫 -n:顯示結果所在行號 -c:統計匹配到的行數,註意

Linux 三劍客 grep 使用詳解

Linux 最重要的三個命令在業界被稱為三劍客,它們是:awk、sed、grep。sed 已經在上篇中講過,本文要講的是 grep 命令。 我們在使用 Linux 系統中,grep 命令的使用尤為頻繁,熟練掌握 grep 的常見用法,能夠極大地提高你的工作效率。 grep 命令是一種強大的文字搜尋工具,它能使

Linux三劍客老三grep

egrep 直接 -o 單個字符 內容 cnblogs 基本 轉義符 基礎正則表達式 說明: Linux系統中grep命令是一種強大的文本搜索工具,它能使用正則表達式搜索文本,並把匹配的行打印出來。工作中我們常常用它來過濾出我們想要的數據。 格式: grep [OPTION

linux三劍客老三-grep

使用 文件 googl cto 技術分享 style ebe col grep使用 最近在看視頻學習Linux,發現自己原來學習的linux都是一些皮毛,簡直無法在實際工作中使用,為此,特記錄自己學習的過程。 ???????? linux三劍客之老三-grep ??????

運維路-文字處理-三劍客grep、sed、awk)

轉載:https://blog.csdn.net/zisefeizhu/article/details/82526749 目錄  grep 支援的正則 描述 輸出控制 描述 內容行控制 描述 示例: sed Usage: 命令 描述 地址 描述 匹配刪除(d)  替