文字三劍客 grep命令

2021-10-05 12:30:17 字數 1978 閱讀 3348

① grep,標準grep命令,支援基本和擴充套件的正規表示式;

② egrep,擴充套件grep命令,其實和grep -e等價,支援基本和擴充套件的正規表示式;

③ fgrep,快速grep命令,其實和grep -f等價,不支援正規表示式,按照字串表面意思進行匹配;

格式: grep [引數]

常用引數:

[root@localhost ~]# grep -v "^#" filename | grep -v "^$"     #完整輸出去掉空行及注釋命令

[root@localhost ~]# grep zwx file_* /etc/hosts     #支援多檔案查詢並支援使用萬用字元

file_1:zwx

file_1:zwx

file_1:zwxddkjflkdjfdlkfjlsdkj

file_2:zwx

[root@localhost ~]# grep -c zwx file_*     #輸出匹配字串行的數量

file_1:2

file_2:1

file_3:0

[root@localhost ~]# grep "^[ss]" /proc/meminfo     #顯示/proc/meminfo檔案中以大小寫s開頭的行

[root@localhost ~]# grep -i "^s" /proc/meminfo     #忽略s的大小寫

[root@localhost ~]# grep -v "/bin/bash$" /etc/passwd     #顯示/etc/passwd檔案中不以/bin/bash結尾的行

[root@localhost ~]# id root > /dev/null && grep "^root\>" /etc/passwd | cut -d: -f7     #如果root使用者存在,顯示其預設的shell程式;位置錨定

[root@localhost ~]# grep "\<[[:digit:]]\\>" /etc/passwd     #找出/etc/passwd中的兩位或三位數; 貪婪匹配:繼續往後匹配  

[root@localhost ~]# grep "\<[0-9]\\>" /etc/passwd

[root@localhost ~]# grep -e "\<[0-9]\>" /etc/passwd     #使用egrep,擴充套件正規表示式

[root@localhost ~]# grep "^[[:space:]]\+[^[:space:]]\+" /etc/grub2.cfg     #顯示/etc/grub2.cfg檔案中,至少以乙個空白字元開頭的且後面存非空白字元行

[root@localhost ~]# netstat -tan | grep "listen[[:space:]]*$"     #找出「netstat -tan"命令的結果中以'listen'後跟0、1或多個空白字元結尾的行

[root@localhost ~]# useradd bash && useradd testbash && useradd nologin -s /sbin/nologin     #新增使用者bash、testbash以及nologin(其shell為/sbin/nologin),然後找出/etc/passwd檔案中使用者名稱同shell名的行

bash:x:1010:1013::/home/bash:/bin/bash

nologin:x:1012:1015::/home/nologin:/sbin/nologin

[root@localhost ~]# grep -e "^(\<[[:alnum:]]+\>).*\1$" /etc/passwd     #擴充套件正規表示式  

[root@localhost ~]# grep "^\(\<[[:alnum:]]\+\>\).*\1$" /etc/passwd     #基本正規表示式;\1:引用分組的內容;保證使用者名稱和shell同名

三劍客之GREP

grep基本用法 檢索條件關鍵字工具 grep options pattern file.color 高亮顯示匹配到的字串 v 顯示不能被pattern匹配到的 i 忽略字元大小寫 o 僅顯示匹配到的字串 q 靜默模式,不輸出任何資訊 a after,匹配到的後 行 b before,匹配到的前 行...

三劍客之grep

1 grep linux系統中grep命令是一種強大的文字搜尋工具,它能使用正規表示式搜尋文字,並把匹 配的行列印出來。grep全稱是global regular expression print,表示全域性正規表示式版本,它的使用許可權是所有使用者。2 grep主要引數3 grep實用案例 1 搜...

三劍客之grep

grep i 不區分大小寫 color 高亮顯示 v 被匹配到的不顯示 o 只顯示匹配到字串 元字元 任意長度的任意字元 任意單個字元 匹配範圍內的 匹配範圍外的 正規表示式 regular expression regexp 正規表示式預設情況下工作在貪婪模式下 正規表示式的元字元 匹配任意單個字...