首页 > 解决方案 > 使用 awk 在 tar.gz 文件中的文件中打印语句?

问题描述

有一个 tar.gz 文件,该文件包含多个 .add 文件,其中包含多行数据。

我试图在不提取 tar.gz 文件的情况下获取数据行的第 1 列。

使用但不起作用的代码: tar -xvf FILENAME.tgz --to-command="awk 'BEGIN {print $1}'"

.tgz 文件内容示例:

a.add
b.add

.add 文件的内容示例:

2019|01|190|80
2020|03|172|65
2019|04|160|50
2018|12|165|48

所需输出的示例:

2019
2020
2019
2018

摘要:我想打印多个 .add 文件中每一行数据的第一列,这些文件在 tar.gz 文件中压缩而不提取。

标签: bashawktar

解决方案


$ tar xzf tar.gz --to-command="awk -F\| '{print \$1}'"
2019
2020
2019

推荐阅读