≡ Menu

List the contents of a tar or tar.gz file

How do I list the contents of a tar or tar.gz file on a Linux, OS X, and Unix-like system?

GNU/tar or BSD/tar is an archiving program designed to store and extract files from an archive file known as a tarfile. You can create a tar file or compressed tar file tar. However, sometimes you need to list the contents of tar or tar.gz file on screen before extracting all files.


To view a detailed table of contents for archive called my-data.tar.gz, use the following syntax:
tar -ztvf my-data.tar.gz
tar -tvf my-data.tar.gz
tar -tvf my-data.tar.gz 'search-patter'


Let us see some examples:

Task: List the contents of a tar file

Use the following command:
$ tar -tvf file.tar
Sample outputs:

Fig.01: List archive contents to screen

Fig.01: List archive contents to screen

Task: List the contents of a tar.gz file

Use the following command:
$ tar -ztvf file.tar.gz

Task: List the contents of a tar.bz2 file

Use the following command:
$ tar -jtvf file.tar.bz2

Task: Search for specific files

In this example, look for *.pl (all perl files) inside a detailed table of contents for archive called projects.tar.gz:
$ tar -tvf projects.tar.bz2 '*.pl'

  • t: List the contents of an archive.
  • v: Verbosely list files processed (display detailed information).
  • z: Filter the archive through gzip so that we can open compressed (decompress) .gz tar file.
  • j: Filter archive through bzip2, use to decompress .bz2 files.
  • f filename: Use archive file called filename.
Share this tutorial on:

Like this? Follow us on Twitter OR support us by using Patreon

{ 23 comments… add one }
  • Shashi September 2, 2008, 6:19 am

    Thanks a lot Vivek…This article is very useful for me….

  • Bolser September 15, 2008, 3:25 pm


    I don’t know why I always forget this!

    Also the ‘j’ trick is killer! I always just try to use ‘z’, and then give up when bzip won’t play. Now I just need to remember … use j in stead of z when bzip.

  • jitedar December 24, 2008, 10:37 pm

    great and thx..

  • asd January 25, 2009, 4:28 am


  • Amit Verma June 3, 2009, 10:41 am

    Rule of Thumb –
    Use ‘z’ while compressing/decompressing/listing the file with GZIP.
    Use ‘j’ while compressing/decompressing/listing the file with BZIP2.
    – with tar command.

    Amit Verma

  • Jeremy July 16, 2009, 11:16 pm

    The exact thing I was looking for, worked like a charm! :)

  • Ankur Sinha August 27, 2009, 9:57 am

    Good Work!!!
    keep it up!!!

  • Nomaun Khan September 22, 2009, 2:20 pm

    Thanks for the helpful contests

  • kiran October 23, 2009, 1:59 pm

    Thanks a lot for this post guys …:)

    Keep it up …

  • Chris Henley February 16, 2010, 9:22 pm

    thanks. I’m too lazy to read the man page.

  • ode September 8, 2010, 10:11 am

    $ tar -tvf file.tar works for all three file formats.

    $ unzip -l works for zip files

  • Stefan July 17, 2011, 3:54 pm

    Thanks it works fine however do you know if there is a faster way maybe? I have a 6GB gzip file and it takes ages to list the contents. For smaller files it is ok but for big files it is a pain.

  • Fixticks July 21, 2011, 9:25 pm

    man pages are too long, thanks vivek.
    @Stefan, u cud try

    tar -ztvf file.tar.gz > files.txt

    now i assume u may be looking for a certain file in that big gzip, so

    cat files.txt | grep certain_file_name_or_part_of_it

    and u can now check for multiple names without the initial wait of listing the big gz’s files.
    I know this coz i have just done it thanks to reading this blog.thx again Vivek.

  • Liban November 25, 2011, 12:16 am

    I’m trying to find and display, but this isn’t working for me..

    find -name “.gz” | tar -tvf {};

    • brisohn May 1, 2012, 8:09 am

      try this:
      find -name “*.gz” -exec tar -tvf {} \;

  • Moron March 12, 2012, 9:31 pm

    I am getting following error while looking for content of the tar file

    $ tar -ztvf
    tar: illegal option — z

    Usage: tar -{c|r|t|u|x} [ -BdDEFhilmopRsUvw ] [ -Number ] [ -f TarFile ]
    [ -b Blocks ] [ -S [ Feet ] | [ Feet@Density ] | [ Blocksb ] ]
    [ -L InputList ] [-X ExcludeFile] [ -N Blocks ] [ -C Directory ] File …
    Usage: tar {c|r|t|u|x} [ bBdDEfFhilLXmNopRsSUvw[0-9] ]
    [ Blocks ] [ TarFile ] [ InputList ] [ ExcludeFile ]
    [ [ Feet ] | [ Feet@Density ] | [ Blocksb ] ] [-C Directory ] File …

    • Piyush January 16, 2013, 1:40 pm

      -z option option is not working on AIX

      • Vivek Gite March 7, 2016, 1:28 pm

        Try following on AIX unix:
        gzip -d < file.tar.gz | tar xvf -
        OR use following two commands:
        gunzip file.tar.gz
        tar -xvf file.tar

        Read tar and gunzip man pages for more info on your AIX system.

  • Suresh July 17, 2012, 7:06 am

    Sequence is important ! tar -ztfv will fail with error ‘v’ not found where as tar -ztvf works – since you need to specify the filename after the f option. Cheers!

  • Sunny Arora September 11, 2014, 7:03 am

    I want to list the files out of file.tar.bz2 and grep a pattern (say all .c files).
    But executing the command ” tar -tjvf fiel.tar.bz2 | grep .c ” doesn’t give the desired output.
    Please suggest

    • mateen March 7, 2016, 11:09 am

      tar -tjvf fiel.tar.bz2 | grep *.c would do

  • Ryan Claffey February 24, 2016, 4:14 pm

    You dont need to put the ‘-‘ symbol it accepts tar tvf /root/myarchive.tar.gz.

    Less is always more!

Security: Are you a robot or human?

Leave a Comment

You can use these HTML tags and attributes: <strong> <em> <pre> <code> <a href="" title="">

   Tagged with: , , , , , , , , , , , , ,