You can use the following syntax to delete a file from a tar ball:
tar --delete -f example.tar filename
Example: Delete a File From a Tar Ball
First, create a tar ball for testing purpose using the tar command, enter:# cd /tmp
# tar -cvf foo.tar /etcTo display a list of files, enter:
# tar -tvf foo.tarOR
# tar -tvf foo.tar | grep 'etc/resolv.conf'Sample outputs:
-rw-r--r-- root/root 30 2011-09-20 17:51 etc/resolv.conf.tmpTo delete a file called 'etc/resolv.conf' from a tar ball called foo.tar, enter:
-rw-r--r-- root/root 185 2011-07-27 20:35 etc/resolv.conf
-rw-r--r-- root/root 185 2011-07-27 20:35 etc/resolv.conf.pppd-backup.ppp0
-rw-r--r-- root/root 51 2011-07-12 03:14 etc/resolv.conf~
# tar --delete -f foo.tar etc/resolv.confVerify that file has been deleted from the tar ball:
# tar -tvf foo.tar | grep 'etc/resolv.conf'Sample outputs:
-rw-r--r-- root/root 30 2011-09-20 17:51 etc/resolv.conf.tmpTo delete all etc/resolv.conf files, use the --wildcards opitons. It will enable pattern matching:
-rw-r--r-- root/root 185 2011-07-27 20:35 etc/resolv.conf.pppd-backup.ppp0
-rw-r--r-- root/root 51 2011-07-12 03:14 etc/resolv.conf~
# tar --wildcards --delete -f foo.tar 'etc/resolv.conf*'Use the following command to verify that files deleted from the tar ball:
# tar -tvf foo.tar | grep 'etc/resolv.conf'Please note that you are not allowed to modify or delete files from compressed archives such as tar.gz or tar.bz2.
No comments:
Post a Comment