grep配合正则表达式使用

grep [-acinv] [--color=auto] [-A n] [-B n] '搜寻字符串' 文件名
参数说明:
-a:将二进制文档以文本方式处理
-c:显示匹配次数
-i:忽略大小写差异
-n:在行首显示行号
-A:After的意思,显示匹配字符串后n行的数据
-B:before的意思,显示匹配字符串前n行的数据
-v:显示没有匹配行-A:After的意思,显示匹配部分之后n行-B:before的意思,显示匹配部分之前n行
--color:以特定颜色高亮显示匹配关键字
 


 
命令 注释
^ grep -n "^hello" test.txt 就是找到指定文本中以hello开头的行
$ grep -n "word$" test.txt 就是找到指定文本中以world结尾的行
. grep -n "y.u" test.txt 找到指定文本中y开头u结尾中间有任何字符的行
* 匹配0次或者多次 grep -n "e*g" test.txt 输出eeg eg g eeeeg 以此类推
[a1] grep -n [a1] test.txt 找到指定文本中包含a和1的行 (可以加好多)
[0-9] grep -n [0-9] test.txt 找到指定文本中有0-9数字的行
[a-z] grep -n [a-z] test.txt 找到指定文本中有a-z字母的行
[^0-9] grep -n [^0-9] test.txt 找到指定文本中有不包含0-9数字的行

常用:

纯数字:[[:digit:]]或[0-9]

小写字母:[[:lower:]]或[a-z]

大写字母:[[:upper:]]或[A-Z]

大小写字母:[[:alpha:]]或[a-zA-Z]

数字加字母:[[:alnum:]]或[0-9a-zA-Z]

空白字符:[[:space:]]

标点符号:[[:punct:]]

你可能感兴趣的:(linux)