

Lesspipe is a shell script installed by default as part of the less package that can list the contents of a tar.gz archive, as well as a range of other common archive file formats. You can then list the contents of any archive: $ list_archive.sh foo.rar foo.tbz foo.zipĠ 8 0% 30-03-15 19:29 -rw-r-r- 00000000 m3b 2.9Ġ 0 0% 30-03-15 19:29 drwxr-xr-x 00000000 m0 2.0Īnd since someone mentioned that lesser editor, naturally, emacs can also do this: Save that script in your PATH and make it executable. Type zip >/dev/null 2>&1 & zip -sf "$file"||Įcho "Unknown extension: '$ext', skipping." Type rar >/dev/null 2>&1 & rar v "$file"|| Type tar >/dev/null 2>&1 & tar tf "$file"|| # have extensions like tar.bz2 or tar.gz etc. With all this in mind, you could write a little script that uses the appropriate command depending on the extension of the file you give to it: #!/usr/bin/env bashįor file in "\n-\nArchive '%s'\n-\n" "$file" That's most of the more popular archive formats. RAR 4.20 Copyright (c) 1993-2012 Alexander Roshal P7zip Version 9.20 (locale=en_US.utf8,Utf16=on,HugeFiles=on,4 CPUs) Tar/ tar.gz/ tgz/ tar.xz/ tar.bz2/ tbz files $ tar tf foo.tgzħ-Zip 9.20 Copyright (c) 1999-2010 Igor Pavlov Most (de)compression programs have a flag that lists an archive's contents.
