How do I list files inside compressed tar ball (gzip’d tar’d) archive?
Tar command provides the option to list files inside compressed tar ball. However mtools includes command called lz which gunzips and shows a listing of a gzip’d tar’d archive without extracting files.
For example, display listing of file called backup.tar.gz type command:
$ lz backup.tar.gz
As you see lz provides a listing of a gzip’d tar’d archive, that is a tar archive compressed with the gzip command. It is not strictly necessary on Debian GNU/Linux (or other Linux/BSD/Solaris oses), because the GNU tar(1) program provides the same capability with the command:
$ tar -tzf backup.tar.gz
How To Extract a Single File / Directory from Tarball Archive
Question. How do I extract a single file or directory form a tarball under UNIX / Linux shell prompt? How do I restore a single file from /dev/st0 tape device?
tar xvf /dev/st0 filename
tar xvf /dev/st0 directory-name
tar xvf mytar.ball.tar filename
tar -zxvf mytar.ball.tar.gz directory-name
Extract file to /tmp directory
tar -zxvf mytar.ball.tar.gz -C /tmp filename
tar -zxvf mytar.ball.tar.gz -C /tmp dir-name
Read tar man page for more information:
man tar
Tar Extract a Single File(s) From a Large Tarball
Question. I’m new to Linux. Over few days I found lots software distributed as .tar.gz file. How do I install tar.gz files under Linux?
Answer. tar.gz also known as tarball, an archive format for electronic data and software. Most Linux tarball contains a source code for software. If you are new to Linux I recommend using apt-get, rpm and yum command to install all binary packages.
Tarballs are a group of files in one file. Tarball files have the extension .tar.gz, .tgz or .tar.bz2. Most open source software use tarballs to distribute programs/source codes.
# 1: Uncompress tarball
To uncompress them, execute the following command(s) depending on the extension:
Now change directory
$ tar zxf file.tar.gz
$ tar zxf file.tgz
$ tar jxf file.tar.bz2
$ tar jxf file.tbz2
Now change directory
$ ls
$ cd path-to-software/
# 2: Build and install software
Generally you need to type 3 commands as follows for building and compiling software:
# ./configure
# make
# make install
Where,
- ./configure will configure the software to ensure your system has the necessary functionality and libraries to successfully compile the package
- make will compile all the source files into executable binaries.
- Finally, make install will install the binaries and any supporting files into the appropriate locations.
# 3: Read INSTALL / README file
Each tarball comes with installation and build instructions. Open INSTALL or README file for more information:
$ vi INSTALL
Tar Extract a Single File(s) From a Large Tarball
Q. I’ve couple of large tarballs such as www.tar and images.tar. Is it possible to extract a single file or a list of files from a large tarball such as images.tar instead of extracting the entire tarball? How do I extract specific files under Linux / UNIX operating systems?
A. GNU tar can be used to extract a single or more files from a tarball. To extract specific archive members, give their exact member names as arguments, as printed by -t option.
Extracting Specific Files
Extract a file called etc/default/sysstat from config.tar.gz tarball:
Some people prefers following syntax:
Extract a directory called css from cbz.tar:
$ tar -ztvf config.tar.gz
$ tar -zxvf config.tar.gz etc/default/sysstat
$ tar -xvf {tarball.tar} {path/to/file}
Some people prefers following syntax:
tar --extract --file={tarball.tar} {file}
Extract a directory called css from cbz.tar:
$ tar --extract --file=cbz.tar css
Wildcard based extracting
You can also extract those files that match a specific globbing pattern (wildcards). For example, to extract from cbz.tar all files that begin with pic, no matter their directory prefix, you could type:
To extract all php files, enter:
$ tar -xf cbz.tar --wildcards --no-anchored 'pic*'
To extract all php files, enter:
$ tar -xf cbz.tar --wildcards --no-anchored '*.php'
Where,
- -x: instructs tar to extract files.
- -f: specifies filename / tarball name.
- -v: Verbose (show progress while extracting files).
- -j : filter archive through bzip2, use to decompress .bz2 files.
- -z: filter archive through gzip, use to decompress .gz files.
- –wildcards: instructs tar to treat command line arguments as globbing patterns.
- –no-anchored: informs it that the patterns apply to member names after any / delimiter.
What Is A Tarball?
A tarball is an archive of files and/or directories. If a tarball is gzip’d or bz2′d, then it has been compressed.“Untar” A File
If you are dealing with a tarball (example.tar) file, you can extract the files from it using:tar xvf example.tar
tar xvfz example.tar.gz
tar xzvf example.tgz
tar yxf example.tar.bz2
tar xvzf example.tar.gz */DIRECTORY_YOU_WANT_REPLACES_THIS_TEXT/*
List The Contents
If you would like to see what is inside a tarball, you can use the command:tar tvf example.tar
tar tzf example.tar.gz
Tar It Up!
If you would like to tarball some files, you can do so by using the command:tar cvf filename.tar files/directories
tar cfz blah.tar.gz files/directories
man tar
The man page for the tar command:NAME
tar - The GNU version of the tar archiving utility
SYNOPSIS
tar [options]
Operations:
[-]A --catenate --concatenate
[-]c --create
[-]d --diff --compare
[-]r --append
[-]t --list
[-]u --update
[-]x --extract --get
--delete
Common Options:
-C, --directory DIR
-f, --file F
-j, --bzip2
-p, --preserve-permissions
-v, --verbose
-z, --gzip
All Options:
[ --atime-preserve ] [ -b, --blocking-factor N ]
[ -B, --read-full-records ] [ --backup BACKUP-TYPE ]
[ --block-compress ] [ -C, --directory DIR ] [ --check-links ]
[ --checkpoint ] [ -f, --file [HOSTNAME:]F ]
[ -F, --info-script F --new-volume-script F ]
[ --force-local ] [ --format FORMAT ]
[ -g, --listed-incremental F ] [ -G, --incremental ]
[ --group GROUP ] [ -h, --dereference ] [ --help ]
[ -i, --ignore-zeros ] [ --ignore-case ]
[ --ignore-failed-read ] [ --index-file FILE ] [ -j, --bzip2 ]
[ -k, --keep-old-files ] [ -K, --starting-file F ]
[ --keep-newer-files ] [ -l, --one-file-system ]
[ -L, --tape-length N ] [ -m, --touch, --modification-time ]
[ -M, --multi-volume ] [ --mode PERMISSIONS ]
[ -N, --after-date DATE, --newer DATE ] [ --newer-mtime DATE ]
[ --no-anchored ] [ --no-ignore-case ] [ --no-recursion ]
[ --no-same-permissions ] [ --no-wildcards ]
[ --no-wildcards-match-slash ] [ --null ] [ --numeric-owner ]
[ -o, --old-archive, --portability, --no-same-owner ]
[ -O, --to-stdout ] [ --occurrence NUM ] [ --overwrite ]
[ --overwrite-dir ] [ --owner USER ]
[ -p, --same-permissions, --pre-serve-permissions ]
[ -P, --absolute-names ] [ --pax-option KEYWORD-LIST ]
[ --posix ] [ --preserve ] [ -R, --block-number ]
[ --record-size SIZE ] [ --recursion ] [ --recursive-unlink ]
[ --remove-files ] [ --rmt-command CMD ]
[ --rsh-command CMD ] [ -s, --same-order, --preserve-order ]
[ -S, --sparse ] [ --same-owner ] [ --show-defaults ]
[ --show-omitted-dirs ]
[ --strip-components NUMBER, --strip-path NUMBER (1) ]
[ --suffix SUFFIX ] [ -T, --files-from F ] [ --totals ]
[ -U, --unlink-first ] [ --use-compress-program PROG ] [ --utc ]
[ -v, --verbose ] [ -V, --label NAME ] [ --version ] [ --volno-file F ]
[ -w, --interactive, --confirmation ] [ -W, --verify ]
[ --wildcards ] [ --wildcards-match-slash ] [ --exclude PATTERN ]
[ -X, --exclude-from FILE ] [ -Z, --compress, --uncompress ]
[ -z, --gzip, --gunzip, --ungzip ] [ -[0-7][lmh] ]
(1) tar-1.14 uses --strip-path, tar-1.14.90+ uses --strip-components
DESCRIPTION
This manual page documents the GNU version of tar, an archiving program
designed to store and extract files from an archive file known as a
tarfile. A tarfile may be made on a tape drive, however, it is also
common to write a tarfile to a normal file. The first argument to tar
must be one of the options Acdrtux, followed by any optional functions.
The final arguments to tar are the names of the files or directories
which should be archived. The use of a directory name always implies
that the subdirectories below should be included in the archive.
EXAMPLES
tar -xvf foo.tar
verbosely extract foo.tar
tar -xzf foo.tar.gz
extract gzipped foo.tar.gz
tar -cjf foo.tar.bz2 bar/
create bzipped tar archive of the directory bar called foo.tar.bz2
tar -xjf foo.tar.bz2 -C bar/
extract bzipped foo.tar.bz2 after changing directory to bar
tar -xzf foo.tar.gz blah.txt
extract the file blah.txt from foo.tar.bz2
FUNCTION LETTERS
One of the following options must be used:
-A, --catenate, --concatenate
append tar files to an archive
-c, --create
create a new archive
-d, --diff, --compare
find differences between archive and file system
-r, --append
append files to the end of an archive
-t, --list
list the contents of an archive
-u, --update
only append files that are newer than the existing in archive
-x, --extract, --get
extract files from an archive
--delete
delete from the archive (not for use on mag tapes!)
COMMON OPTIONS
-C, --directory DIR
change to directory DIR
-f, --file [HOSTNAME:]F
use archive file or device F (default "-", meaning stdin/stdout)
-j, --bzip2
filter archive through bzip2, use to decompress .bz2 files
-p, --preserve-permissions
extract all protection information
-v, --verbose
verbosely list files processed
-z, --gzip, --ungzip
filter the archive through gzip
ALL OPTIONS
--atime-preserve
donât change access times on dumped files
-b, --blocking-factor N
block size of Nx512 bytes (default N=20)
-B, --read-full-blocks
reblock as we read (for reading 4.2BSD pipes)
--backup BACKUP-TYPE
backup files instead of deleting them using BACKUP-TYPE simple or numbered
--block-compress
block the output of compression program for tapes
-C, --directory DIR
change to directory DIR
--check-links
warn if number of hard links to the file on the filesystem mismatch the
number of links recorded in the archive
--checkpoint
print directory names while reading the archive
-f, --file [HOSTNAME:]F
use archive file or device F (default "-", meaning stdin/stdout)
-F, --info-script F --new-volume-script F
run script at end of each tape (implies --multi-volume)
--force-local
archive file is local even if has a colon
--format FORMAT
selects output archive format
v7 - Unix V7
oldgnu - GNU tar <=1.12
gnu - GNU tar 1.13
ustar - POSIX.1-1988
posix - POSIX.1-2001
-g, --listed-incremental F
create/list/extract new GNU-format incremental backup
-G, --incremental
create/list/extract old GNU-format incremental backup
-h, --dereference
donât dump symlinks; dump the files they point to
--help like this manpage, but not as cool
-i, --ignore-zeros
ignore blocks of zeros in archive (normally mean EOF)
--ignore-case
ignore case when excluding files
--ignore-failed-read
donât exit with non-zero status on unreadable files
--index-file FILE
send verbose output to FILE instead of stdout
-j, --bzip2
filter archive through bzip2, use to decompress .bz2 files
-k, --keep-old-files
keep existing files; donât overwrite them from archive
-K, --starting-file F
begin at file F in the archive
--keep-newer-files
do not overwrite files which are newer than the archive
-l, --one-file-system
stay in local file system when creating an archive
-L, --tape-length N
change tapes after writing N*1024 bytes
-m, --touch, --modification-time
donât extract file modified time
-M, --multi-volume
create/list/extract multi-volume archive
--mode PERMISSIONS
apply PERMISSIONS while adding files (see chmod(1))
-N, --after-date DATE, --newer DATE
only store files newer than DATE
--newer-mtime DATE
like --newer, but with a DATE
--no-anchored
match any subsequenceof the nameâs components with --exclude
--no-ignore-case
use case-sensitive matching with --exclude
--no-recursion
donât recurse into directories
--no-same-permissions
apply userâs umask when extracting files instead of recorded permissions
--no-wildcards
donât use wildcards with --exclude
--no-wildcards-match-slash
wildcards do not match slashes (/) with --exclude
--null --files-from reads null-terminated names, disable --directory
--numeric-owner
always use numbers for user/group names
-o, --old-archive, --portability
like --format=v7; -o exhibits this behavior when creating an
archive (deprecated behavior)
-o, --no-same-owner
do not attempt to restore ownership when extracting; -o exhibits
this behavior when extracting an archive
-O, --to-stdout
extract files to standard output
--occurrence NUM
process only NUM occurrences of each named file; used with --delete,
--diff, --extract, or --list
--overwrite
overwrite existing files and directory metadata when extracting
--overwrite-dir
overwrite directory metadata when extracting
--owner USER
change owner of extraced files to USER
-p, --same-permissions, --preserve-permissions
extract all protection information
-P, --absolute-names
donât strip leading â/âs from file names
--pax-option KEYWORD-LIST
used only with POSIX.1-2001 archives to modify the way tar handles
extended header keywords
--posix
like --format=posix
--preserve
like --preserve-permissions --same-order
-R, --record-number
show record number within archive with each message
--record-size SIZE
use SIZE bytes per record when accessing archives
--recursion
recurse into directories
--recursive-unlink
remove existing directories before extracting directories of the
same name
--remove-files
remove files after adding them to the archive
--rmt-command CMD
use CMD instead of the default /usr/sbin/rmt
--rsh-command CMD
use remote CMD instead of rsh(1)
-s, --same-order, --preserve-order
list of names to extract is sorted to match archive
-S, --sparse
handle sparse files efficiently
--same-owner
create extracted files with the same ownership
--show-defaults
display the default options used by tar
--show-omitted-dirs
print directories tar skips while operating on an archive
--strip-components NUMBER, --strip-path NUMBER
strip NUMBER of leading components from file names before extraction
(1) tar-1.14 uses --strip-path, tar-1.14.90+ uses --strip-components
--suffix SUFFIX
use SUFFIX instead of default â~â when backing up files
-T, --files-from F
get names to extract or create from file F
--totals
print total bytes written with --create
-U, --unlink-first
remove existing files before extracting files of the same name
--use-compress-program PROG
access the archive through PROG which is generally a compression
program
--utc display file modification dates in UTC
-v, --verbose
verbosely list files processed
-V, --label NAME
create archive with volume name NAME
--version
print tar program version number
--volno-file F
keep track of which volume of a multi-volume archive its working
in FILE; used with --multi-volume
-w, --interactive, --confirmation
ask for confirmation for every action
-W, --verify
attempt to verify the archive after writing it
--wildcards
use wildcards with --exclude
--wildcards-match-slash
wildcards match slashes (/) with --exclude
--exclude PATTERN
exclude files based upon PATTERN
-X, --exclude-from FILE
exclude files listed in FILE
-Z, --compress, --uncompress
filter the archive through compress
-z, --gzip, --gunzip, --ungzip
filter the archive through gzip
--use-compress-program PROG
filter the archive through PROG (which must accept -d)
-[0-7][lmh]
specify drive and density
BUGS
The GNU folks, in general, abhor man pages, and create info documents
instead. The maintainer of tar falls into this category. Thus this man
page may not be complete, nor current, and was included in the Red Hat CVS
tree because man is a great tool . This man page was first taken
from Debian Linux and has since been lovingly updated here.
REPORTING BUGS
Please report bugs via https://bugzilla.redhat.com
SEE ALSO
The full documentation for tar is maintained as a Texinfo manual. If
the info and tar programs are properly installed at your site, the command
info tar
should give you access to the complete manual.
AUTHORS
Debian Linux http://www.debian.org/
Mike Frysinger
GNU Oct 2004 TAR(1)
Tidak ada komentar:
Posting Komentar