shell文本处理工具grep
shell腳本之grep工具
grep是 行 過濾工具;用于根據(jù)關(guān)鍵字進(jìn)行行過濾。語法和選項
語法:
#grep [選項] ‘關(guān)鍵字’ 文件名
常見選項
OPTIONS
-i :不區(qū)分大小寫
-v :查找不包含指定內(nèi)容的行,反向選擇
-w:按單詞搜索
-o:打印匹配關(guān)鍵字
-c:統(tǒng)計匹配到的次數(shù)
-n:顯示行號
-r:逐層遍歷目錄查找
-A:顯示匹配行及后面多少行
-B:顯示匹配行及前面多少行
-C:顯示匹配行前后多少行
-l:只列出匹配的文件名
-L:列出不匹配的文件名
-e:使用正則表達(dá)式
-E:使用擴展正則表達(dá)式在這里插入代碼片
^key:以關(guān)鍵字開頭
keyKaTeX parse error: Expected group after '^' at position 10: :以關(guān)鍵字結(jié)尾 ^?:匹配空行
–color=auto:可以將找到的關(guān)鍵詞部分加上顏色顯示
grep添加顏色
1、grep --color=auto 'root' /etc/passwd 2、alias grep='grep --color=auto' 3、常用sudo -s 切換到root用戶vim /etc/bash.bashrc最后行加上alias grep='grep --color=auto保存source /etc/bash.bashrc常用的選項
測試文本grep.txt
A root:zjs B C D E F G zjs:ROOT q r s uzjs:/zjs:Root/zjs:zjs1、過濾出包含root關(guān)鍵字的行
root:zjs
2、過濾出包含root關(guān)鍵字的行以及行號 【-n number】
2:root:zjs
3、過濾出包含root關(guān)鍵字的行以及行號,忽略大小寫
grep -ni ‘root’ grep.txt
2:root:zjs
9:zjs:ROOT
16:zjs:/zjs:Root/zjs:zjs
4、過濾出以root開頭的行及行號
grep -ni ^root grep.txt
2:root:zjs
5、過濾出以root結(jié)尾的行以及行號
grep -ni root$ grep.txt
9:zjs:ROOT
6、過濾出不以root開頭的行以及行號
grep -n -i -v ^root grep.txt
1:A
3:B
4:C
5:D
6:E
7:F
8:G
9:zjs:ROOT
10:q
11:r
12:s
13:u
14:
15:
16:zjs:/zjs:Root/zjs:zjs
總結(jié)
以上是生活随笔為你收集整理的shell文本处理工具grep的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 人防系统是什么意思 人防系统介绍
- 下一篇: 一斤等于多少千克 等于0.5千克