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
相关推荐
是娇娇公主~4 小时前
C++ 中 std::deque 的原理?它内部是如何实现的?
开发语言·c++·stl
SuperEugene4 小时前
Axios 接口请求规范实战:请求参数 / 响应处理 / 异常兜底,避坑中后台 API 调用混乱|API 与异步请求规范篇
开发语言·前端·javascript·vue.js·前端框架·axios
xuxie995 小时前
N11 ARM-irq
java·开发语言
wefly20176 小时前
从使用到原理,深度解析m3u8live.cn—— 基于 HLS.js 的 M3U8 在线播放器实现
java·开发语言·前端·javascript·ecmascript·php·m3u8
luanma1509806 小时前
PHP vs C++:编程语言终极对决
开发语言·c++·php
寂静or沉默6 小时前
2026最新Java岗位从P5-P7的成长面试进阶资源分享!
java·开发语言·面试
kyriewen117 小时前
给浏览器画个圈:CSS contain 如何让页面从“卡成PPT”变“丝滑如德芙”
开发语言·前端·javascript·css·chrome·typescript·ecmascript
娇娇yyyyyy7 小时前
QT编程(18): Qt QItemSelectionModel介绍
开发语言·qt
豆豆的java之旅8 小时前
软考中级软件设计师 数据结构详细知识点(含真题+练习题,可直接复习)
java·开发语言·数据结构
sthnyph8 小时前
QT开发:事件循环与处理机制的概念和流程概括性总结
开发语言·qt