Shell中grep用法总结

grep用法总结

当你需要在文本数据中搜索特定模式或者字符串时,grep是一个非常有用的工具。它在Unix和类Unix系统上广泛使用,用于从文件或者标准输入中过滤匹配某个模式的行,并将结果输出到标准输出。下面是grep的概念、常用参数总结以及一些示例:

概念

「grep(Global Regular Expression Print)」grep是一个用于搜索文本的命令行工具,它使用正则表达式来匹配文本中的模式,并输出匹配的行。

常用参数

「-i, --ignore-case」:忽略大小写进行匹配。

「-v, --invert-match」:反向匹配,只输出不匹配的行。

「-n, --line-number」:输出匹配行的行号。

「-c, --count」:只输出匹配的行数而不输出具体内容。

「-r, --recursive」:递归地搜索目录下的文件。

「-l, --files-with-matches」:只输出包含匹配内容的文件名,而不显示具体的匹配行。

「-w, --word-regexp」:只匹配整个单词,而不是单词的部分。

「-A NUM, --after-context=NUM」:显示匹配行及其后面NUM行的内容。

「-B NUM, --before-context=NUM」:显示匹配行及其前面NUM行的内容。

「-E, --extended-regexp」:使用扩展的正则表达式语法。

「-F, --fixed-strings」:将模式视为固定字符串而不是正则表达式。

示例

  1. 在文件中搜索包含特定字符串的行:
powershell 复制代码
grep "pattern" file.txt
  1. 忽略大小写搜索:
powershell 复制代码
grep -i "pattern" file.txt
  1. 输出不匹配的行:
powershell 复制代码
grep -v "pattern" file.txt
  1. 显示匹配行的行号:
powershell 复制代码
grep -n "pattern" file.txt
  1. 只输出匹配的行数:
powershell 复制代码
grep -c "pattern" file.txt
  1. 递归地搜索目录下的文件:
powershell 复制代码
grep -r "pattern" directory/
  1. 只输出包含匹配内容的文件名:
powershell 复制代码
grep -l "pattern" directory/
  1. 搜索整个单词:
powershell 复制代码
grep -w "word" file.txt
  1. 显示匹配行及其后面两行的内容:
powershell 复制代码
grep -A 2 "pattern" file.txt

10.使用拓展的正则表达式语法:

powershell 复制代码
grep -E "pattern1|pattern2" file.txt
相关推荐
灰子学技术12 小时前
go response.Body.close()导致连接异常处理
开发语言·后端·golang
二十雨辰13 小时前
[python]-AI大模型
开发语言·人工智能·python
Yvonne爱编码13 小时前
JAVA数据结构 DAY6-栈和队列
java·开发语言·数据结构·python
Re.不晚13 小时前
JAVA进阶之路——无奖问答挑战1
java·开发语言
你这个代码我看不懂13 小时前
@ConditionalOnProperty不直接使用松绑定规则
java·开发语言
pas13613 小时前
41-parse的实现原理&有限状态机
开发语言·前端·javascript
琹箐13 小时前
最大堆和最小堆 实现思路
java·开发语言·算法
Monly2114 小时前
Java:修改打包配置文件
java·开发语言
我命由我1234514 小时前
Android 广播 - 静态注册与动态注册对广播接收器实例创建的影响
android·java·开发语言·java-ee·android studio·android-studio·android runtime
island131414 小时前
CANN ops-nn 算子库深度解析:核心算子(如激活函数、归一化)的数值精度控制与内存高效实现
开发语言·人工智能·神经网络