知乎專欄 | 多維度架構 | 微信號 netkiller-ebook | QQ群:128659835 請註明“讀者” |
tar
tar -cvf foo.tar foo/ tar contents of folder foo in foo.tar tar -xvf foo.tar extract foo.tar
tar -zcvf foo.tar foo/ tar contents of folder foo in foo.tar.gz
tar -xvzf foo.tar.gz extract gzipped foo.tar.gz
tar -jcvf foo.tar.bz2 foo/ tar contents of folder foo in foo.tar.bz2 tar -jxvf foo.tar.bz2 extract b2zip foo.tar.bz2
tar -Zcvf foo.tar.Z foo/ tar contents of folder foo in foo.tar.Z tar -Zxvf foo.tar.Z extract compress foo.tar.Z
-t, --list list the contents of an archive
列出tar包中的檔案
tar tvf neo.tar.gz
# mkdir -p /www/test.com/www.test.com/ # echo helloworld > /www/test.com/www.test.com/test.txt # tar zcvf www.test.com.tar.gz /www/test.com/www.test.com/ # tar ztvf www.test.com.tar.gz drwxr-xr-x root/root 0 2013-08-08 15:24 www/test.com/www.test.com/ -rw-r--r-- root/root 11 2013-08-08 15:24 www/test.com/www.test.com/test.txt # tar zxvf www.test.com.tar.gz www/test.com/www.test.com/ www/test.com/www.test.com/test.txt # find www www www/test.com www/test.com/www.test.com www/test.com/www.test.com/test.txt
-P, --absolute-names don't strip leading `/'s from file names
$ tar -czvPf neo.tar.gz /home/neo/ $ tar -xzvPf neo.tar.gz
tar zcvfP www.test.com.tar.gz /www/test.com/www.test.com/ tar zxvfP www.test.com.tar.gz
-C, --directory=DIR change to directory DIR
解壓到目標目錄
tar -xzvf neo.tar.gz -C /tmp
# tar zxvf www.test.com.tar.gz -C /tmp www/test.com/www.test.com/ www/test.com/www.test.com/test.txt # find /tmp/www/ /tmp/www/ /tmp/www/test.com /tmp/www/test.com/www.test.com /tmp/www/test.com/www.test.com/test.txt # rm -rf /www/test.com/* # tar zxvf www.test.com.tar.gz -C / www/test.com/www.test.com/ www/test.com/www.test.com/test.txt # find /www/test.com/ /www/test.com/ /www/test.com/www.test.com /www/test.com/www.test.com/test.txt
排除neo目錄
tar --exclude /home/neo -zcvf myfile.tar.gz /home/* /etc tar zcvf rpmbuild/SOURCES/netkiller-1.0.tar.gz ~/workspace/public_html/* --exclude .git --exclude .svn
find . -name "*.jpg" -print >list tar -T list -czvf picture.tar.gz find /etc/ | tar czvf xxx1.tar.gz -T -
追加最近7天更改過的檔案
find / -type f -mtime -7 | xargs tar -rf weekly_incremental.tar
tar -jcpvf - file.php | ssh root@172.16.3.1 "tar -jxpvf -"
find /opt -print | cpio -o > opt.cpio find . -type f -name '*.sh' -print | cpio -o | gzip >sh.cpio.gz cpio –i < opt.cpio
# ls access.2010-{10,11}-??.log access.2010-10-01.log access.2010-10-17.log access.2010-11-02.log access.2010-11-18.log access.2010-10-02.log access.2010-10-18.log access.2010-11-03.log access.2010-11-19.log access.2010-10-03.log access.2010-10-19.log access.2010-11-04.log access.2010-11-20.log access.2010-10-04.log access.2010-10-20.log access.2010-11-05.log access.2010-11-21.log access.2010-10-05.log access.2010-10-21.log access.2010-11-06.log access.2010-11-22.log access.2010-10-06.log access.2010-10-22.log access.2010-11-07.log access.2010-11-23.log access.2010-10-07.log access.2010-10-23.log access.2010-11-08.log access.2010-11-24.log access.2010-10-08.log access.2010-10-24.log access.2010-11-09.log access.2010-11-25.log access.2010-10-09.log access.2010-10-25.log access.2010-11-10.log access.2010-11-26.log access.2010-10-10.log access.2010-10-26.log access.2010-11-11.log access.2010-11-27.log access.2010-10-11.log access.2010-10-27.log access.2010-11-12.log access.2010-11-28.log access.2010-10-12.log access.2010-10-28.log access.2010-11-13.log access.2010-11-29.log access.2010-10-13.log access.2010-10-29.log access.2010-11-14.log access.2010-11-30.log access.2010-10-14.log access.2010-10-30.log access.2010-11-15.log access.2010-10-15.log access.2010-10-31.log access.2010-11-16.log access.2010-10-16.log access.2010-11-01.log access.2010-11-17.log # gzip access.2010-{10,11}-??.log
# ls access.2010-{0?,10,11}-??.log access.2010-08-28.log access.2010-10-02.log access.2010-10-13.log access.2010-10-27.log access.2010-11-06.log access.2010-11-17.log access.2010-11-26.log access.2010-08-31.log access.2010-10-03.log access.2010-10-14.log access.2010-10-28.log access.2010-11-08.log access.2010-11-18.log access.2010-11-27.log access.2010-09-24.log access.2010-10-04.log access.2010-10-15.log access.2010-10-29.log access.2010-11-09.log access.2010-11-19.log access.2010-11-28.log access.2010-09-25.log access.2010-10-06.log access.2010-10-17.log access.2010-10-30.log access.2010-11-10.log access.2010-11-20.log access.2010-11-29.log access.2010-09-26.log access.2010-10-07.log access.2010-10-19.log access.2010-10-31.log access.2010-11-11.log access.2010-11-21.log access.2010-11-30.log access.2010-09-27.log access.2010-10-08.log access.2010-10-20.log access.2010-11-02.log access.2010-11-12.log access.2010-11-22.log access.2010-09-29.log access.2010-10-09.log access.2010-10-22.log access.2010-11-03.log access.2010-11-14.log access.2010-11-23.log access.2010-09-30.log access.2010-10-10.log access.2010-10-23.log access.2010-11-04.log access.2010-11-15.log access.2010-11-24.log access.2010-10-01.log access.2010-10-12.log access.2010-10-25.log access.2010-11-05.log access.2010-11-16.log access.2010-11-25.log # gzip access.2010-{0?,10,11}-??.log &
*.zip
zip/unzip file[.zip][root@localhost src]# yum install bzip2
查看RPM包所含檔案
[root@localhost src]# rpm -ql bzip2-1.0.6-13.el7 /usr/bin/bunzip2 /usr/bin/bzcat /usr/bin/bzcmp /usr/bin/bzdiff /usr/bin/bzgrep /usr/bin/bzip2 /usr/bin/bzip2recover /usr/bin/bzless /usr/bin/bzmore /usr/share/doc/bzip2-1.0.6 /usr/share/doc/bzip2-1.0.6/CHANGES /usr/share/doc/bzip2-1.0.6/LICENSE /usr/share/doc/bzip2-1.0.6/README /usr/share/man/man1/bunzip2.1.gz /usr/share/man/man1/bzcat.1.gz /usr/share/man/man1/bzcmp.1.gz /usr/share/man/man1/bzdiff.1.gz /usr/share/man/man1/bzgrep.1.gz /usr/share/man/man1/bzip2.1.gz /usr/share/man/man1/bzip2recover.1.gz /usr/share/man/man1/bzless.1.gz /usr/share/man/man1/bzmore.1.gz
http://www.7-zip.org/
如果你僅僅是解壓檔案,只需安裝下面的包即可
$ sudo apt-get install p7zip
如果你要創建7zip檔案就需要安裝p7zip-full
$ sudo apt-get install p7zip-full
[root@localhost ~]# echo "Hello" > test [root@localhost ~]# xz -z test [root@localhost ~]# ll test.xz -rw------- 1 root root 1436 2019-01-16 06:13 test.xz [root@localhost ~]# xz -d test.xz [root@localhost ~]# cat test Hello
tar 用法
[root@localhost ~]# tar Jcvf test.tar.xz test test [root@localhost ~]# ll test.tar.xz -rw-r--r-- 1 root root 1528 2019-03-19 04:32 test.tar.xz [root@localhost ~]# tar Jxvf test.tar.xz test