grep指令

grep命令常见用法

查询文件中的指定内容,并返回文本行

grep "hello world" a.txt

多个文件查询指定内容

grep "hello world" a.txt b.txt c.txt

输出除指定内容文本行之外的所有行

grep -v "hello world" a.txt

标记匹配颜色

grep "hello world" a.txt --color=auto

使用正则表达式,匹配符合条件的文本行

grep -E "[1-9]+" a.txt
grep -P "(\d{3}\-){2}\d{4}" a.txt

grep -P支持更多高级的正则表达式功能,而grep -E则提供了一些常用的扩展功能。

正则表达式模式(\d{3}\-){2}\d{4}匹配连续出现两次的三个数字后跟一个连字符,再加上四个数字的模式。只有前两行匹配了这个模式,因此它们被返回作为结果。最后一行不匹配模式,所以被忽略。

统计文件或者文本中包含匹配字符串的行数 -c 选项:

grep -c "hello world" a.txt

搜索历史命令中输入过的命令的记录

history | grep git

输出包含匹配字符串的行数加结果 -n选项

grep "text" -n a.txt

1:This is a text file.
2:It contains some text.
3:Here is another line of text.

搜索多个文件并查找匹配文本在哪些文件中

grep -l "text" file1 file2 file3

grep递归搜索文件

多级目录搜索,递归查询文件夹下的文件是否包含指定内容

grep "text" . -r -n

忽略匹配样式中的字符大小写

echo "hello world" | grep -i "HELLO"

这个指令用了删除文件用的(-Z选项以空字符作为文件名之间的分隔符)

grep -lZ "text" file* |  xargs -0 rm

在第二个文件中,查找和第一个相匹配的文本行

cat test1.txt | grep -f key.log
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值