zcat foo.cov.gz bar.cov.gz | micov compress will break as the header in bar.cov.gz will be interpreted as data rather than a header due to buffering. Headers should be filtered. Short term work around: zcat foo.cov.gz bar.cov.gz | grep -v "^genome_id" | micov compress