shell grep 命令大全

Posted kimbo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell grep 命令大全相关的知识,希望对你有一定的参考价值。

grep: 用于模糊查找,在标准输入或者文件中

  格式: grep [选项参数]...  PATTERN |FILE ...

选项参数说明:

-E, --extended-regexp PATTERN 是一个可扩展的正则表达式
-e, --regexp=PATTERN 用 PATTERN 来进行匹配操作
-f, --file=FILE 从 FILE 中取得 PATTERN
-i, --ignore-case 忽略大小写
-w, --word-regexp    强制 PATTERN 仅完全匹配字词
-x, --line-regexp      强制 PATTERN 仅完全匹配一行
-z, --null-data      一个 0 字节的数据行,但不是空行
-c, --count         只输出匹配行的计数
-h, --no-filename     查询多文件时不显示文件名
-H, --with-filename   显示文件名
-n, --line-number           匹配的行号
-o, --only-matching        只显示匹配的内容
-l, --files-with-matches   只输出包含匹配字符的文件名
-L, --files-without-match 只输出不匹配的文件名
-s, --no-messages          不显示不存在或者匹配错误的信息
-v, --invert-match          显示不包含匹配文本的行

 

"\<" 和 "\>" 分别标注单词的开始与结尾。
‘^‘:指匹配的字符串在行首
‘$‘:指匹配的字符串在行尾

grep  "\<kim" kimbo_test.sh #匹配 kim,kimbo,kimko 等开头的字符串
grep  "kim\>" kimbo_test.sh # kim,mathkim,kobekim 等结尾的字符串

grep "^kim" kimbo_test.sh  #行首以kim开头
grep "kim$" kimbo_test.sh  #行尾以kim开头

 

正则表达式

1.匹配单个字符

grep "\<1[0-9]" kimbo_test.sh  #匹配以1开头的数字,后面一个字符依然是数字

2.匹配重复字符

grep "mf\{3\}" kimbo_test.sh  #匹配以m开头,后面是三个f 的内容

3.匹配8位数字日期(YYYYMMDD)

grep ‘^[12]\{1\}[0-9]\{7\}$‘ kimbo_test.sh   #强匹配 1或者2开头的日期,如19901001,20171001 等

 


















以上是关于shell grep 命令大全的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段——cli的终端命令大全

VSCode自定义代码片段4——cli的终端命令大全

shell 如何在grep后只取一部分?

grep命令使用大全

shell 命令 grep -R 查询包含指定内容的文件

Shell基本脚本命令使用教程