You can examine the contents of compressed files on Linux systems without uncompressing the files or changing them in any way. This post explains the commands for doing that and the types of compressed files they work with. Credit: DigitalSoul / Getty Images / Linux If you need to check the contents of a compressed text file on Linux, you don’t have to uncompress it first. Instead, you can use a zcat or bzcat command to extract and display file contents while leaving the file intact. The “cat” in each command name tells you that the command’s purpose is to display content. The “z” tells you that it works with compressed files. Which of the two commands to use depends on the type of compressed file you are examining. If the file was compressed with gzip or zip, you would use the zcat command. If the file was compressed with bzip2, you would use the bzcat command. On some systems, zcat might be called gzcat. You can identify the command used to compress a file by the compressed file’s extension. .gz or .tgz = gzipped files, use zcat (or gzcat) .zip = zipped files, use zcat (or gzcat) .bz2 = bzipped files, use bzcat In the example below, the top 20 lines of H. G. Wells’ “The War of the Worlds” is displayed from a file compressed with bzip2. $ bzcat The_War.bz2 | head -20 No one would have believed in the last years of the nineteenth century that this world was being watched keenly and closely by intelligences greater than man’s and yet as mortal as his own; that as men busied themselves about their various concerns they were scrutinised and studied, perhaps almost as narrowly as a man with a microscope might scrutinise the transient creatures that swarm and multiply in a drop of water. With infinite complacency men went to and fro over this globe about their little affairs, serene in their assurance of their empire over matter. It is possible that the infusoria under the microscope do the same. No one gave a thought to the older worlds of space as sources of human danger, or thought of them only to dismiss the idea of life upon them as impossible or improbable. It is curious to recall some of the mental habits of those departed days. At most terrestrial men fancied there might be other men upon Mars, perhaps inferior to themselves and ready to welcome a missionary enterprise. Yet across the gulf of space, minds that are to our minds as ours are to those of the beasts that perish, intellects vast and cool and unsympathetic, regarded this earth with envious eyes, and slowly and surely drew their plans against us. And early in the twentieth century came the great disillusionment. To display only a portion of the text, pass the command output to another command like the head command shown above or to a grep command that includes the text you are searching for. For example: $ bzcat The_War.bz2 | grep vastness Haggerston and Hoxton, and, indeed, through all the vastness of London throughout the inanimate vastness of sidereal space. But that is a After the bzcat display, the file remains compressed. $ ls -l The_War.bz2 -rw-r--r--. 1 shs shs 100677 May 23 15:40 The_War.bz2 If you want to uncompress the file instead of just checking its content, use bunzip2. $ bunzip2 The_War.bz2 $ ls -l The* -rw-r--r--. 1 shs shs 345315 May 23 15:40 The_War To compress the file again, use the bzip2 command. $ ls -l -rw-r--r--. 1 shs shs 100677 May 23 15:40 The_War.bz2 The zcat command works the same way, but with gzip and zip files. $ zcat The_War.gz | grep vastness Haggerston and Hoxton, and, indeed, through all the vastness of London throughout the inanimate vastness of sidereal space. But that is a $ ls -l The_War.gz -rw-r--r--. 1 shs shs 132099 May 23 15:40 The_War.gz To wrap up, the table below provides a list of the commands used to compress, uncompress and display the contents of compressed files without uncompressing them. Note that the zip command requires that you supply the name of the compressed file to be created and does not compress the file “in place” (i.e., leaving you with only that file) as the other two commands do. To compress To uncompress To display without uncompressing bzip2 bunzip2 bzcat gzip gunzip zcat zip unzip zcat Note that the compression commands and formats used are different and compression rates will depend on file content as well as the commands used. The zcat and bzcat commands are surprisingly fast. The results of compressing the same file using the three commands are shown below. $ bzip2 The_War $ gzip The_War $ zip The_War.zip The_War $ ls -l total 364 -rw-r--r--. 1 shs shs 100677 May 23 16:47 The_War.bz2 -rw-r--r--. 1 shs shs 132099 May 23 15:40 The_War.gz -rw-r--r--. 1 shs shs 132245 May 23 16:11 The_War.zip The bzcat and zcat commands provide an easy way to verify the contents of compressed text files without requiring that you uncompress and then recompress the files. Keep in mind that these commands only work with compressed text files. You’ll see a lot of output, but likely nothing of value if you try to look at a compressed image or tar file. Related content how-to How to find files on Linux There are many options you can use to find files on Linux, including searching by file name (or partial name), age, owner, group, size, type and inode number. By Sandra Henry Stocker Jun 24, 2024 8 mins Linux opinion Linux in your car: Red Hat’s milestone collaboration with exida With contributions from Red Hat and critical collaborators, the safety and security of automotive vehicles has reached a new level of reliability. By Sandra Henry Stocker Jun 17, 2024 5 mins Linux how-to How to print from the Linux command line: double-sided, landscape and more There's a lot more to printing from the Linux command line than the lp command. Check out some of the many available options. By Sandra Henry Stocker Jun 11, 2024 6 mins Linux how-to Converting between uppercase and lowercase on the Linux command line Converting text between uppercase and lowercase can be very tedious, especially when you want to avoid inadvertent misspellings. Fortunately, Linux provides a handful of commands that can make the job very easy. By Sandra Henry Stocker Jun 07, 2024 5 mins Linux PODCASTS VIDEOS RESOURCES EVENTS NEWSLETTERS Newsletter Promo Module Test Description for newsletter promo module. Please enter a valid email address Subscribe