Sponsored Content
Full Discussion: untar
Operating Systems AIX untar Post 302263758 by bakunin on Tuesday 2nd of December 2008 12:17:05 PM
Old 12-02-2008
You can limit what gets extracted from the archive by using a filename. For instance, going with your example, to extract only a.txt you could issue

Code:
tar -xvf samba.tar samba/a.txt

but this would still create a directory "./samba" and put "a.txt there. It would only prevent the other files getting untarred too.

If you do not want this or for some reason cannot mv the files afterwards to different locations you will have to create the tar archive in such a way that allows to extract files to a flat hierarchy. You could pipe a list of filenames to tar like this:

Code:
echo *txt | tar -cvf my.tar

"my.tar" would contain all the *txt files in the current directory and you could extract an arbitrary subset of these with the mechanism sketched above.

I hope this helps.

bakunin
 

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

Untar to different location

Hi, I'm facing problem of untar'ing the tar contents with absolute pathnames to a different directory. Please provide me some hint on how to resolve it. Regards, Pradeep (1 Reply)
Discussion started by: pradeep_desh
1 Replies

2. UNIX for Advanced & Expert Users

Urgent....untar!!!

HI UNIX GURUS... I am facing the a similar problem which malaymaru has posted earlier raegarding untaring a file in some other specified directory.But the solution by UNIX DAEMON "Perderabo" seems little difficult to understand.(USING #pax -r -s '=^/opt/abc=/tmp=' < tarfile) So plz explain... (4 Replies)
Discussion started by: rahul26
4 Replies

3. UNIX for Dummies Questions & Answers

untar to a specified file

I have file1.tar and want to untar it under /server/file2. If I do tar -xvf file1.tar, the files will be deployed under file1. How to specify the destination folder?? thx (3 Replies)
Discussion started by: melanie_pfefer
3 Replies

4. UNIX for Advanced & Expert Users

untar

i have try to untar the file in same location. But it gave the error # tar -xvf TSMSRVAIX5220.tar x tivoli.tsm.devices.acsls, 757760 bytes, 1480 media blocks. tar: 0511-169 A directory checksum error on media; 4011 not equal to 8222. How can i rectify this prob. Thanks in advance ... (2 Replies)
Discussion started by: prakash96453
2 Replies

5. UNIX for Dummies Questions & Answers

Untar problems

Hi, I am new to unix scripting. I have written a java program which will initialize a sftp connection and copy a unix script from my machine to a remote server. Then i initalized an ssh connection and i executed the script. This script contains a sequnece of commands and one of them is to... (2 Replies)
Discussion started by: vinothg
2 Replies

6. Shell Programming and Scripting

Untar remotely

I need to upload tar or zip files to a unix server than unzip or untar them remotely. Any suggestions on the easiest way to do the remote untar or unzip? For example does someone know of a cgi script or something? Thanks -jz (3 Replies)
Discussion started by: jwzumwalt
3 Replies

7. Shell Programming and Scripting

cp, chown, untar

hello i want shell script. i have a source.txt /home/user409/public_html/test/ /home/user09876/public_html/xdsss/ /home/user9765/public_html/320xxx/ . . . maybe 1000 lines i want . 1.read a source.txt 2.untar special.tar.gz into these directory in source.txt 3.i want to... (14 Replies)
Discussion started by: topic32428285
14 Replies

8. Shell Programming and Scripting

Not able to untar file

Hello Experts, I have requirement in which a file is present in the folder_test. In that folder there is file called Test.tar.gz.20111102. Now my requirement is i have to rename this file to someother format and untar it.... folder_test Test.tar.gz.20111102 I am using the below... (5 Replies)
Discussion started by: aks_1902
5 Replies

9. Solaris

Unable to Untar

Hello, bash-2.05# tar -xvf sunos.tar tar: directory checksum error bash-2.05# file sunos.tar sunos.tar: data bash-2.05# Can someone please help me untar this. This is a Solaris 9 box. (5 Replies)
Discussion started by: zigi_p5
5 Replies

10. Shell Programming and Scripting

Untar fail

Hi Team, I have a file named as follows: aaa.tar.gz Now I need to verify if the untar fails, then the script has to send a mail. In order to check this condition, I need a tar.gz file which is unable to untar it. Can anyone help me to create a file which I will be able to unzip successfully... (2 Replies)
Discussion started by: kmanivan82
2 Replies
tar(3tcl)							 Tar file handling							 tar(3tcl)

__________________________________________________________________________________________________________________________________________________

NAME
tar - Tar file creation, extraction & manipulation SYNOPSIS
package require Tcl 8.4 package require tar ?0.7? ::tar::contents tarball ?-chan? ::tar::stat tarball ?file? ?-chan? ::tar::untar tarball args ::tar::get tarball fileName ?-chan? ::tar::create tarball files args ::tar::add tarball files args ::tar::remove tarball files _________________________________________________________________ DESCRIPTION
::tar::contents tarball ?-chan? Returns a list of the files contained in tarball. The order is not sorted and depends on the order files were stored in the archive. If the option -chan is present tarball is interpreted as an open channel. It is assumed that the channel was opened for reading, and configured for binary input. The command will not close the channel. ::tar::stat tarball ?file? ?-chan? Returns a nested dict containing information on the named ?file? in tarball, or all files if none is specified. The top level are pairs of filename and info. The info is a dict with the keys "mode uid gid size mtime type linkname uname gname devmajor devminor" % ::tar::stat tarball.tar foo.jpg {mode 0644 uid 1000 gid 0 size 7580 mtime 811903867 type file linkname {} uname user gname wheel devmajor 0 devminor 0} If the option -chan is present tarball is interpreted as an open channel. It is assumed that the channel was opened for reading, and con- figured for binary input. The command will not close the channel. ::tar::untar tarball args Extracts tarball. -file and -glob limit the extraction to files which exactly match or pattern match the given argument. No error is thrown if no files match. Returns a list of filenames extracted and the file size. The size will be null for non regular files. Leading path seperators are stripped so paths will always be relative. -dir dirName Directory to extract to. Uses pwd if none is specified -file fileName Only extract the file with this name. The name is matched against the complete path stored in the archive including directo- ries. -glob pattern Only extract files patching this glob style pattern. The pattern is matched against the complete path stored in the archive. -nooverwrite Dont overwrite files that already exist -nomtime Leave the file modification time as the current time instead of setting it to the value in the archive. -noperms In Unix, leave the file permissions as the current umask instead of setting them to the values in the archive. -chan If this option is present tarball is interpreted as an open channel. It is assumed that the channel was opened for reading, and configured for binary input. The command will not close the channel. % foreach {file size} [::tar::untar tarball.tar -glob *.jpg] { puts "Extracted $file ($size bytes)" } ::tar::get tarball fileName ?-chan? Returns the contents of fileName from the tarball % set readme [::tar::get tarball.tar doc/README] { % puts $readme } If the option -chan is present tarball is interpreted as an open channel. It is assumed that the channel was opened for reading, and con- figured for binary input. The command will not close the channel. ::tar::create tarball files args Creates a new tar file containing the files. files must be specified as a single argument which is a proper list of filenames. -dereference Normally create will store links as an actual link pointing at a file that may or may not exist in the archive. Specifying this option will cause the actual file point to by the link to be stored instead. -chan If this option is present tarball is interpreted as an open channel. It is assumed that the channel was opened for writing, and configured for binary output. The command will not close the channel. % ::tar::create new.tar [glob -nocomplain file*] % ::tar::contents new.tar file1 file2 file3 ::tar::add tarball files args Appends files to the end of the existing tarball. files must be specified as a single argument which is a proper list of filenames. -dereference Normally add will store links as an actual link pointing at a file that may or may not exist in the archive. Specifying this option will cause the actual file point to by the link to be stored instead. -prefix string Normally add will store files under exactly the name specified as argument. Specifying a ?-prefix? causes the string to be prepended to every name. -quick The only sure way to find the position in the tarball where new files can be added is to read it from start, but if tarball was written with a "blocksize" of 1 (as this package does) then one can alternatively find this position by seeking from the end. The ?-quick? option tells add to do the latter. ::tar::remove tarball files Removes files from the tarball. No error will result if the file does not exist in the tarball. Directory write permission and free disk space equivalent to at least the size of the tarball will be needed. % ::tar::remove new.tar {file2 file3} % ::tar::contents new.tar file3 BUGS, IDEAS, FEEDBACK This document, and the package it describes, will undoubtedly contain bugs and other problems. Please report such in the category tar of the Tcllib SF Trackers [http://sourceforge.net/tracker/?group_id=12883]. Please also report any ideas for enhancements you may have for either package and/or documentation. KEYWORDS
archive, tape archive, tar CATEGORY
File formats tar 0.7 tar(3tcl)
All times are GMT -4. The time now is 12:01 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy