1. 用途:linux grep命令是用於查詢檔案裡符合條件的字串;
2. 語法:grep [選項] 『搜尋的字串』 [檔案]
3. 常見的選項:
-e :開啟擴充套件(extend)的正規表示式。
-i :忽略大小寫(ignore case)。
-v :反過來(invert),只列印沒有匹配的,而匹配的反而不列印。
-n :顯示行號
-w :被匹配的文字只能是單詞,而不能是單詞中的某一部分,如文字中有liker,而我搜尋的只是like,就可以使用-w選項來避免匹配liker
-c :顯示總共有多少行被匹配到了,而不是顯示被匹配到的內容,注意如果同時使用-cv選項是顯示有多少行沒有被匹配到。
-o :只顯示被模式匹配到的字串。
--color :將匹配到的內容以顏色高亮顯示。
-a n:顯示匹配到的字串所在的行及其後n行,after
-b n:顯示匹配到的字串所在的行及其前n行,before
-c n:顯示匹配到的字串所在的行及其前後各n行,context
4. 實戰:
[root@hjm ~]# grep -ev "^$|#" /etc/vsftpd/vsftpd.conf #檢視vsftpd配置檔案除了空格行和#開頭的行
anonymous_enable=yes
local_enable=yes
write_enable=yes
local_umask=022
dirmessage_enable=yes
xferlog_enable=yes
connect_from_port_20=yes
xferlog_std_format=yes
listen=no
listen_ipv6=yes
pam_service_name=vsftpd
userlist_enable=yes
[root@hjm ~]#
[root@hjm ~]# grep -in "root" /etc/passwd # "-i"和 「-n」 分別表示忽略大小寫和顯示行號
1:root:x:0:0:root:/root:/bin/bash
10:operator:x:11:0:operator:/root:/sbin/nologin
[root@hjm ~]#
[root@hjm ~]# grep -ic "root" /etc/passwd #「-c」 表示行號,相當於grep -i "root" /etc/passwd | wc -l
2[root@hjm ~]# grep -w 'bin' /etc/passwd #只能匹配字串為bin的單詞,sbin的不會匹配到
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
[root@hjm ~]# grep -wa 2 'root' /etc/passwd #只能匹配到字串為root的,並且還會顯示這個字串的下面2行
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
--operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:ftp user:/var/ftp:/sbin/nologin
[root@hjm ~]#
linux 三劍客之 grep
grep 是 linux系統中最重要的命令之一 其功能是從文字或者管道資料中篩選匹配的行及資料 如果配置正規表示式技術一起使用,則其功能更強大,它是linux運維人員必須要掌握的命令之一 usage grep option pattern file 用法 grep 引數 要搜尋的內容 檔案 eg r...
linux三劍客之grep
color auto 或者 color 表示對匹配到的文字著色顯示 i 在搜尋的時候忽略大小寫 n 顯示結果所在行號 c 統計匹配到的行數,注意,是匹配到的總行數,不是匹配到的次數 o 只顯示符合條件的字串,但是不整行顯示,每個符合條件的字串單獨顯示一行 v 輸出不帶關鍵字的行 反向查詢,反向匹配 ...
linux三劍客之grep
前言 linux中最常用 最重要的三個命令,在業界被稱為三劍客 grep sed awk。三位大俠分別擅長 grep擅長查詢,sed擅長取行和替換,awk擅長取列。一.先看一下grep的help 二.引數詳解 格式 grep option pattern file option 引數選項,可以有多個...