文字處理
說明grep -c 『str』 /tmp/test
列印符合要求的行的數目。
grep -i 『str』 /tmp/test
輸出符合要求的行,忽略str大小寫。
grep -n 『str』 /tmp/test
輸出符合要求的行及行號。
grep -v 『str』 /tmp/test
輸出不符合要求的行。
grep -a2 『str』 /tmp/test
輸出符合要求的行以及下面2行。
grep -b2 『str』 /tmp/test
輸出符合要求的行以及上面2行。
grep -c2 『str』 /tmp/test
輸出符合要求的行以及上下各2行。
grep 『str』 /tmp/test
在檔案 『/tmp/test』 中查詢 "str"並列印顯示。
grep 『^str』 /tmp/test
在檔案 『/tmp/test』 中查詢以 「str」 開始的行並列印顯示。
grep 『[0-9]』 /tmp/test
查詢 『/tmp/test』 檔案中所有包含數字的行並列印顯示。
grep -v 『[0-9]』 /tmp/test
查詢 『/tmp/test』 檔案中所有不包含數字的行並列印顯示。
grep 『[^0-9]』 /tmp/test
查詢 『/tmp/test』 檔案中所有非純數字的行並列印顯示。
grep 『^ [^0-9]』 /tmp/test
輸出不以數字開頭的行,^[0-9]表示以數字開頭的行,[^0-9]表示除0-9之外的字元)。
grep 『r..t』 /tmp/test
輸出r和o之間有兩個任意字元的行,(.表示任意字元)。
grep 『c*』 /tmp/test
輸出含有0個或多個字元c的行,(*表示0個或多個前面的字元)。
grep 『o\』 /etc/passwd
符號{}裡的數字表示前面字元o要重複2次。
grep 『o\』 /etc/passwd
符號{}裡的數字表示前面字元o要重複的次數,表示o重複1次到3次。
grep str -r /tmp/*
在目錄 『/tmp』 及其子目錄中查詢 「str」。
grep -v 『^#』 /etc/inittab |grep -v 『^$』
過濾掉所有以#開頭的行和所有空行(#表示行的開始,katex parse error: expected group after '^' at position 14: 表示行的結尾,空行可以用'^̲'表示)。
egrep 『ao+』 /etc/passwd
輸出乙個或多個含有前面的字元o的行。
egrep 『rao?』 /etc/passwd
輸出0個或1個含有前面的字元o的行。
egrep 『root | 11 | 99』 /etc/passwd
輸出含有字串『root』或『11』或『99的行。
egrep 『r(oo)+ | (oper)』 /etc/passwd
用『()』表示乙個整體,(oo)+表示乙個或者多個『oo』。
命令功能
sed -n 'n』p file
列印file檔案第n行內容,'n』表示第n行。
sed -n '1,$'p file
列印file檔案所有行。
sed -n '1,3』p file
列印file檔案第1行到第3行。
sed -n '/root/'p file
列印file檔案中含有』root』字串的行,特殊符號^、$、.、*使用同grep。
sed -n -e '1』p -e '/root/'p file
列印file檔案第一行和含字串』root』的行。
sed '1』d file
列印時不顯示file檔案第一行。
sed '2,4』d file
列印時不顯示file檔案第2到第4行。
sed '/root/'d filw
列印時不顯示file檔案中含』root』字串的行。
sed 『7s@o@x@g』 file
字元』o』替換成』x』,『s』表示替換,g表示本行全部替換,不加g只替換本行出現的第乙個』o』,』/『分隔符,也可使用』#』、』@』。
sed 『7,9s/o/x/g』 file
字元』o』替換成』x』,『s』表示替換,g表示7到9行全部替換,不加g只替換每行出現的第乙個』o』,』/『分隔符,也可使用』#』、』@』。
sed 『1,$s/[0-9]//g』 file
列印時不顯示file檔案中所有的數字。
sed 『s/ \(rot\)\(.*\)\(bash\)/ \3\2\1/』 file
調換』rot』與』bash』字串的位置,特殊符號前必須加上脫意字元』』,』()'表示把要替換的字元打包成乙個整體。
sed 『s/222/123&/』 file
在字串』222』行首加上指定內容』123』。
sed 『s/222/&123/』 file
在字串』222』行尾加上指定內容』123』。
sed 『s/^.*$/123&/』 file
在所有行行首加上指定內容』123』。
sed 『s/^.*$/&123/』 file
在所有行行尾加上指定內容』123』。
sed -i 『s/ro/ot/g』 file
修改檔案內容,字串』ro』替換成』ot』。
命令功能
awk f 『:』 『』 file
列印擷取的文件某段內容,-f作用是指定分隔符,沒有-f則以空格或tab為分隔符,$1為第乙個字段,$0表示整行。
awk f 『:』 『』 file
列印擷取的文件某段內容,print可以列印自定義內容,但自定義內容要用雙引號括起來。
awk 『/ot/』 file
列印含』ot』字串的行。
awk -f 『:』 『$1~/oo/』 file
列印第一段含有』oo』 字串的行。
awk -f 『:』 '/root/ /test/ 』 /etc/passwd
多次匹配,現匹配』root』,在匹配』test』,只列印所匹配的段。
awk -f 『:』 『$3>=500』 /etc/passwd
列印第3段大於等於500的行,500表示數字,"500"表示字串。
awk -f 『:』 『$3<$4』 /etc/passwd
列印第4段大於第3段的行。
awk -f 『:』 『$3>「5」 && $3<「7」』 /etc/passwd
列印第3段大於5並且小於7的行。
awk -f 『:』 『$3>「5」 || $7=="/bin/bash"』 /etc/passwd
列印第3段大於5或第7段等於"/bin/bash"的行。
awk -f 『:』 『』 /etc/passwd
列印分隔符分隔後每行有多少段,$nf表示最後一段。
awk -f 『:』 『』 /etc/passwd
列印行號,nr可作為判斷條件。
awk 『nr>20』 /etc/passwd
列印第20行以後的所有行。
awk -f 『:』 『$1=「root」』 /etc/passwd
列印第一段的值替換成"root"後的檔案。
awk -f 『:』 『』 /etc/passwd
計算第3段加第4段的和並列印整行。
awk -f 『:』 『;end』 /etc/passwd
計算並列印第3段的總和,end表示所有的行都已經執行。
文字處理工具grep
linux中的文字處理三劍客 grep 文字過濾工具 模式 pattern 工具 sed stream editor。流編輯器 文字編輯工具 awk linux上的實現為gawk,文字報告生成器 格式化文字 grep 作用 文字搜尋工具,根據使用者指定的 模式 過濾條件 對文字逐行匹配檢查後列印匹配...
linux文字處理工具之grep
常用的grep選項 c 只輸出匹配行的計數。這條有時候很有用,不需要再 wc l i 不區分大小寫 只適用於單字元 h 查詢多檔案時不顯示檔名。l 查詢多檔案時只輸出包含匹配字元的檔名。n 顯示匹配行及行號。s 不顯示不存在或無匹配文字的錯誤資訊。v 顯示不包含匹配文字的所有行。例子grep v s...
linux中的文字處理工具 grep
格式 grep options pattern file 引數作用 v顯示不被匹配到的行 e相當於egrep,支援拓展正在表示式 o僅顯示匹配到的字串 w匹配整個單詞 n顯示匹配到的行號 i忽略大小寫 q靜默模式,不輸出任何資訊 e實現多選項建的邏輯或關係 f file 根據模式檔案處理 a 顯示匹...