How to decompress content of various archive types with one command

view full story

http://unix.stackexchange.com – I have to handle files that come as uncompressed text files or in various archive types (.gz, .zip, .tar.gz, bz2...). I want to process their content piped to another command. Is there a tool that detects whether a file is compressed and prints it content uncompressed? The best I could find is a combination of zcat (some archive types) and cat (non-compressed files). (HowTos)