Hello list,

This is my first post here, so apologies in advance for whatever I get wrong.

I am asking for an enhancement to zcat, that it should silently ignore empty files, either always, or (if that conflicts with POSIX or some other standard), by a command line option.

My use case is as follows:
I maintain a server, and have occasion to scan log files for specific items.
As is typical in a logrotate environment, the files are something like

xyz.log              current
xyz.log.1           previous
xyz.log.2.gz
xyz.log.3.gz      etc etc

Most of the time I can search for something by

zgrep 'target' xyz*

But, wanting to further process a number of entries, I tried the obvious

zcat xyz* | awk ...

which results in

gzip: xyz.log.1: unexpected end of file

I note that it correctly handles archives with no content (just the 20 byte header)

Regards,
Peter



Reply via email to