linux - 如何将 awk 用于压缩文件

标签 linux shell unix gzip bzip2

如何更改压缩文件的以下命令?

awk 'FNR==NR { array[$1,$2]=$8; next } ($1,$2) in array { print $0 ";" array[$1,$2] }' input1.vcf input2.vcf

该命令可以正常处理普通文件。我需要更改压缩文件的命令。

最佳答案

你需要像这样阅读它们的压缩文件:

awk '{ ... }' <(gzip -dc input1.vcf.gz) <(gzip -dc input2.vcf.gz)

试试这个:

awk 'FNR==NR { sub(/AA=\.;/,""); array[$1,$2]=$8; next } ($1,$2) in array { print $0 ";" array[$1,$2] }' <(gzip -dc input1.vcf.gz) <(gzip -dc input2.vcf.gz) | gzip > output.vcf.gz

关于linux - 如何将 awk 用于压缩文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13137501/

相关文章:

linux - 打印文件中 "End"关键字之间的行

android - 如何从另一个 shell 脚本将一个 shell 脚本作为进程启动

shell - 测试远程 TCP 端口是否从 shell 脚本打开

linux - Bash 从 stdout 获取最后一行(组合)

android - 使用 development studio 5 插件在 Eclipse 中构建和编辑 Android 内核

c - 如何在 MinGW 中使用预编译静态库?

macos - 如何使用 shell 命令从钥匙串(keychain)中删除密码?

linux - 如何编写一行命令将目录中的所有子目录 scp 到远程机器

shell - tcsh 中的数值范围

c - 意外标记附近的语法错误