gz文件可以用grep命令吗?

gz文件可以用grep命令吗?,第1张

gz文件可以用grep命令的。

1、使用zcat命令可以在不打开压缩包的情况下把压缩包内容读取出来, 如:

zcat test.gz

这样就读取到test.gz内文件的内容了

2、在压缩包中搜索关键字

1) 假如是非压缩包文件,可以用grep命令去搜索,例如: grep –i "被查找的字符串" 文件名

2) 假如是.gz压缩包类型的话,可以用zgrep命令去搜索,例如: zgrep –i "被查找的字符串" 文件名

3) 但假如是其它压缩类型,例如zip好像就不能直接这样去搜索了,既然不能一步到位,那我们可以分步走,例如可以用:zcat 文件名 | grep -c '被查找字符串内容'

zcat+文件名.gz。

有很多时候我们想要查看日志文件,发现服务器已经被重启了,然后原来的日志就被打包存起来了,这个时候生成的gz日志文件我们就没有办法直接去查看了。

所以这个时候我们就需要zcat+日志名.gz来查看,还可以用|grep来进行筛选自己想要的日志信息。

在linux系统下如何安装gz文件命令,下面由学习啦小编为大家整理了linux下安装gz文件命令的方法步骤,

linux下安装gz文件命令

linuxtar.gz安装方法

linux下解压tar.gz文件

xargs 是给命令传递参数的一个过滤器,也是组合多个命令的一个工具,它能够捕获一个命令的输出,然后传递给另外一个命令。之所以会用到这个命令,关键是由于 很多命令不支持管道来传递参数 ,而日常工作中就有这个需要,所以就有了 xargs 命令。

我们经常会用grep命令在文件中查找需要的内容,比如现在一个文件夹里面有9个文件,有三种格式txt, csv和gz压缩文件。

123里面存的内容都一样为

456里面存的内容也一样为

789里面存的都是

如果我现在要从所有的文件里面找“apple”

我会得到下面的结果,你会发现 grep不能从gz文件中查找内容

zgrep 这个命令可以解决这个问题,这样就不需要先解压然后再去查找了

会得到如下结果,显示了所有文件格式中找到的“apple”,并且显示了匹配的行号

如果只想在符合某种特征的文件中找你感兴趣的内容呢?比如在文件名中包含123的文件中查找“apple”。这时候就需要管道了,你需要先找到这样的文件然后再从中找“apple”

第一步找到名字中包含123的文件

会得到文件名中包含123的所有文件

第二步查找“apple”

然后我们再来从中找“apple”,你会发现下面这条命令不work,你啥都得不到

这就是我们开篇提到的, 很多命令不支持管道来传递参数。 这个时候 xargs 就派上用场了

同时用上 zgrep ,这样gz文件也一起找了

那么,如果我们想从某一种特定格式的文件中(比如csv文件)找特定的内容该怎么做呢?大家应该能触类旁通,举一反三了吧!

Linux xargs grep zgrep命令​


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11717298.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存