Mar*_*man 6 compression gzip csv head
我目前有一个压缩文件,A.gz
其中包含大量列表数据,包括第一行的标题。我想创建另一个文件,B.gz
,它具有与前一个文件相同的数据,但具有不同的标题。
执行此操作的简单方法是解压缩所有A.gz
, -tail
除第一行之外的所有内容,然后重新压缩所有内容。然而,这似乎效率低下,特别是因为两个gzip
-ed 文件的连接正确地解压缩为解压缩版本的连接。
我想知道是否有办法做到这一点与此类似:
zcat A.gz | head -n 1 | process_header | gzip > B.gz
cat A.gz | (remove compressed header) >> B.gz
Run Code Online (Sandbox Code Playgroud)
无需解压所有A.gz
.
怎么样
zcat A.gz | awk '{if(NR==1){print "myheader"}else{print $0}}' | gzip > B.gz
Run Code Online (Sandbox Code Playgroud)
如果 NR(记录号)为 1,则输出您自己的标头。保持所有其他线路完好无损。
归档时间: |
|
查看次数: |
3943 次 |
最近记录: |