命令常用參數(shù):
-v --revert-match#顯示不包含匹配文本的所有行。-E --extended-regexp#將樣式為延伸的普通表示法來(lái)使用-n --line-number#在顯示符合樣式的那一行之前,標(biāo)示出該行的列數(shù)編號(hào)-i --ignore-case#忽略字符大小寫的差別
pattern正則表達(dá)式主要參數(shù):
\:忽略正則表達(dá)式中特殊字符的原有含義。^:匹配正則表達(dá)式的開始行。$:匹配正則表達(dá)式的結(jié)束行。\<:從匹配正則表達(dá) 式的行開始。\>:到匹配正則表達(dá)式的行結(jié)束。[ ]:?jiǎn)蝹€(gè)字符,如[A]即A符合要求 。[ - ]:范圍,如[A-Z],即A、B、C一直到Z都符合要求 。.: 所有的單個(gè)字符,代表『一定有一個(gè)任意字節(jié)』的意思*:有字符,長(zhǎng)度可以為0。代表『重復(fù)前一個(gè)字節(jié), 0 到無(wú)窮多次』的意思,為組合形態(tài)
示例:
grep '[a-z]\{5\}'顯示所有包含每個(gè)字符串至少有5個(gè)連續(xù)小寫字符的字符串的行grep '\<man'匹配以man開頭的字母如'manic'和'man',但不是'Batman'grep 'man\>'匹配以man結(jié)尾的字母如'Batman'和'man',但不是'manic'grep '^man'匹配的字符串在行首,首行字母以man開頭grep 'man$'匹配的字符串在行尾部,以man結(jié)尾grep 'w.*n'匹配w 開頭與 n 結(jié)尾的字串,當(dāng)中的字節(jié)可有可無(wú)。例如woman、warn、super word mangrep XXX |less顯示的行用less命令打開
常用示例:
ls -l |grep -v '.log$'匹配所有不以.log結(jié)尾的行ls -l |grep '.log$'匹配所有以.log結(jié)尾的行tail -f 日志文件 |grep -E '高亮的關(guān)鍵字1|高亮的關(guān)鍵字2|…|高亮的關(guān)鍵字N' --color=auto\grep "要查找的內(nèi)容" *.log --color