我正在尝试编辑压缩的 fastq.gz 文本文件,通过删除第 2,6,10,14 行的前六个字符...我现在有两种不同的方法来执行此操作,使用 awk 或 sed,但这些仅如果文件被解压,似乎可以工作。我想编辑这些文件而不解压缩它们,并尝试了以下代码但没有让它工作。谢谢。
使用 sed:
zcat /dir/* | sed -i~ '2~4s/^.\{6\}//'
使用 awk:
zcat /dir/* | awk 'NR%4==2 {gsub(/^....../,"")} 1'
您无法绕过压缩,但可以以自动方式将解压缩/编辑/重新压缩链接在一起:
for f in /dir/*; do
cp "$f" "$f~" &&
gzip -cd "$f~" | sed '2~4s/^.\{6\}//' | gzip > "$f"
done
如果您对操作很有信心,可以通过添加删除备份文件rm "$f~"
到循环体的末尾。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)