使用`grep`和`awk`解析日志文件&&使用`tar`和`find`打包特定类型的文件

场景一:使用grepawk解析日志文件

组合指令

cat /var/log/syslog | grep 'ERROR' | awk '{print $1, $2, $NF}'

应用场景

  • 当你需要解析系统日志(/var/log/syslog)以查找包含“ERROR”的行,并希望显示这些行的日期、时间以及错误消息时,这个命令组合会很有用。
  • cat /var/log/syslog显示系统日志文件的全部内容。
  • grep 'ERROR'过滤出包含“ERROR”的行。
  • awk '{print $1, $2, $NF}'使用awk命令打印每行的第一列(通常是日期)、第二列(通常是时间)和最后一列(通常是具体的错误消息)。

场景二:使用tarfind打包特定类型的文件

组合指令

find /path/to/directory -type f -name "*.jpg" -exec tar -cvf jpg_images.tar {} \;

注意

  • 这个命令实际上不会如预期工作,因为它会尝试将每个.jpg文件单独添加到tar包中,而不是将它们全部打包到一个tar包中。为了将所有找到的.jpg文件打包到一个tar包中,你应该使用tar-T选项或者先使用find将文件列表输出到一个文件中,然后再使用tar打包。

更正确的做法

find /path/to/directory -type f -name "*.jpg" -print0 | xargs -0 tar -cvf jpg_images.tar

或者使用-T选项:

find /path/to/directory -type f -name "*.jpg" -print0 | tar -czvf jpg_images.tar.gz --null -T -

应用场景

  • 当你需要将某个目录(/path/to/directory)及其子目录中所有.jpg文件打包到一个tar包(jpg_images.tar)中时,这个命令组合会很有用。
  • find命令用于查找指定目录下所有.jpg文件。
  • -print0xargs -0(或tar --null)用于处理文件名中的空格和特殊字符。
  • tar -cvf jpg_images.tar创建一个名为jpg_images.tar的tar包,并将找到的文件添加到其中。如果你还希望压缩tar包,可以使用tar -czvf jpg_images.tar.gz来创建一个gzip压缩的tar包。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

听风的鱼鱼儿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值