详解Linux的grep命令

2023年9月19日,周二晚上

先写这么多吧,以后有空再更新,还要一些作业没写完....


目录


概述

grep命令在Linux系统中是一个很重要的文本搜索工具和过滤工具,功能十分强大

grep的意思是"global regular expression print",即“使用正则表达式进行全局搜索并打印结果”

  • global:表示搜索范围不限,可以搜索整个文件或目录下的所有文件
  • regular expression:使用正则表达式进行搜索匹配
  • print:打印搜索结果

grep命令的主要功能:

  • 搜索文件/目录中的字符串
  • 支持正则表达式搜索
  • 可以过滤命令的输出结果
  • 显示匹配行上下文
  • 只显示匹配行数

查看grep命令的所有选项

grep --help

grep的常用选项

-i        忽略大小写

-v        反选,打印不匹配的行

-n        显示匹配行的行号和行内容

-c        只统计匹配行数,不打印行本身

-I        只列出包含匹配内容的文件名词

-r        递归搜索,搜索当前目录和子目录下所有文件

-h        当搜索多个文件时,不显示文件名

选项-i

这是测试文本text.txt的内容

THIS IS A TEXT
this is a text
grep -i "THIS" text.txt

可以看到把含有匹配项的行给全打印了出来

选项-v

这是测试文本text.txt的内容

THIS IS A TEXT
this is a text
grep -v "is" text.txt 

可以看到把不含匹配项的行给打印了出来

选项-n

这是测试文本text.txt的内容

THIS IS A TEXT
this is a text
grep -n "is" text.txt

可以看到把含有匹配项的行号打印了出来

选项-c

这是测试文本text.txt的内容

THIS IS A TEXT
this is a text
grep -c "is" text.txt

可以看到只把含有匹配项的行数打印了出来

选项-l

这是测试文本text.txt的内容

THIS IS A TEXT
this is a text
grep -l "is" text.txt 

可以看到把含有匹配项的文件的名字给打印了出来

组合使用

选项是可以组合使用的

这是测试文本text.txt的内容

THIS IS A TEXT
this is a text
grep -in "is" text.txt 

 

可以看到忽略了大小写并输出了行号

猜你喜欢

转载自blog.csdn.net/m0_61629312/article/details/133044991