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
相关推荐
冠希陈、3 分钟前
PHP 判断是否是移动端,更新鸿蒙系统
android·开发语言·php
HDO清风24 分钟前
CASIA-HWDB2.x 数据集DGRL文件解析(python)
开发语言·人工智能·pytorch·python·目标检测·计算机视觉·restful
2201_7569890924 分钟前
C++中的事件驱动编程
开发语言·c++·算法
多米Domi01135 分钟前
0x3f 第48天 面向实习的八股背诵第五天 + 堆一题 背了JUC的题,java.util.Concurrency
开发语言·数据结构·python·算法·leetcode·面试
2301_8223776536 分钟前
模板元编程调试方法
开发语言·c++·算法
csbysj202039 分钟前
Python 循环嵌套
开发语言
测试_AI_一辰41 分钟前
Agent & RAG 测试工程05:把 RAG 的检索过程跑清楚:chunk 是什么、怎么来的、怎么被命中的
开发语言·人工智能·功能测试·自动化·ai编程
Coding茶水间44 分钟前
基于深度学习的输电电力设备检测系统演示与介绍(YOLOv12/v11/v8/v5模型+Pyqt5界面+训练代码+数据集)
开发语言·人工智能·深度学习·yolo·目标检测·机器学习
清风~徐~来1 小时前
【视频点播系统】BRpc 介绍及使用
开发语言
啟明起鸣1 小时前
【C++ 性能提升技巧】C++ 的引用、值类型、构造函数、移动语义与 noexcept 特性,可扩容的容器
开发语言·c++