參數正則表達式
-n :顯示行號
-o :只顯示匹配的內容
-q :靜默模式,沒有任何輸出,得用$?來判斷執行成功沒有,即有沒有過濾到想要的內容bash
-l :若是匹配成功,則只將文件名打印出來,失敗則不打印,一般-rl一塊兒用,grep -rl 'root' /etc
-A :若是匹配成功,則將匹配行及其後n行一塊兒打印出來
-B :若是匹配成功,則將匹配行及其前n行一塊兒打印出來
-C :若是匹配成功,則將匹配行及其先後n行一塊兒打印出來
--color
-c :若是匹配成功,則將匹配到的行數打印出來
-E :等於egrep,擴展
-i :忽略大小寫ssh
-v :取反,不匹配
-w:匹配單詞atom
正則表達式及字符處理
目標文件/etc/passwd,使用grep命令或egrep
1.顯示出全部含有root的行:
2.輸出任何包含bash的全部行,還要輸出緊接着這行的上下各兩行的內容:
3. 顯示出有多少行含有nologin。
4.顯示出那些行含有root,並將行號一塊輸出。
5.顯示出文件中
6.新建用戶
abominable
abominate
anomie
atomize
編寫正則表達式,將他們匹配出來
egrep 'a.omi(nabl|nat|z|)e' /etc/passwd
7.建四個用戶
Alex213sb
Wpq2222b
yH438PIG
egon666
egon擴展
過濾出用戶名組成是字母+數字+字母的行
[root@MiWiFi-R3-srv ~]# egrep '^[a-Z]+[0-9]+[a-Z]+' /etc/passwd
8.顯示出/etc目錄下全部包含root的文件名
9. 過濾掉/etc/ssh/sshd_config內全部註釋和全部空行
grep -v '^#' /etc/ssh/sshd_config |grep -v '^ *$'grep
grep做業bom