注:在壓縮目錄是,若是隻寫目錄名,也會生成壓縮文件,可是,壓縮文件無內容 若是加上 -r ,則會把目錄下全部的目錄和文件一併壓縮。linux
zip壓縮工具網絡
zip 壓縮文件.zip 源文件ssh
zip -r xx.zip 3.txt xxxx(目錄) 加參數-r 壓縮目錄工具
unzip 1.txt.zip 解壓縮code
unzip xx.zip -d /tmp/3/ 用-d指定解壓到/tmp/3目錄下對象
unzip -l 123.zip 查看壓縮包的文件列表圖片
tar打包工具ip
tar -c(建立)v(可視化)f 壓縮文件名 文件(能夠多個,用空格隔開也能夠是目錄)get
tar -x(解壓)v(可視化)f xx.tar(壓縮文件)it
tar -C 設置解壓目錄:好比 tar -vxf xx.txt.tar -C /opt
注意:解壓縮時,不會提示是否覆蓋,而是直接覆蓋原文件
查看包內容:tar -tf 壓縮文件 (適用於gzip打包、bz2打包、xz打包)
--exclude 能夠在打包的時候,排查某些文件或者目錄。
tar -vcf 文件.tar.gz --exclude 排除的文件或目錄 打包的文件或目錄 一個--exclude只能排除一個,要排除多個要在次添加---exclude 排除的文件或目錄
打包並壓縮
* 使用gzip壓縮:tar -zcvf x.tar.gz 原目錄或者原文件名稱,-z表示打包的同時使用gzip壓縮
解壓:tar -zvxf x.tar.gz
* 使用bzip2壓縮:tar -jcvf x.tar.bz2 原目錄或者原文件名稱 ,-j 表示打包的同時使用bzip2壓縮
解壓:tar -jvxf x.tar.bz2
* 使用xz壓縮:-Jcvf x.tar.xz 原目錄或者原文件名稱 ,-J表示打包的同時使用xz壓縮
解壓:tar -Jvxf x.tar.xz
做業
不能、
gzip 1.txt
bzip2 2.txt
gzip -d 1.txt.gz
bzip2 -d 2.txt.bz2
tar -cvf x.txt.tar 1.txt 3.txt 3 --exclude 2.txt --exclude 4.txt
正確
tar -zcvf x1.tar.gz 1.txt 2.txt
tar jcvf x2.tar.bz2 1.txt 2.txt
tar -zxvf x1.tar.gz
tar -jxvf x2.tar.bz2
bz2的壓縮效果好
tar打包壓縮時,是按照gzip和bzip2的默認壓縮級別來的,gzip工具默認壓縮級別爲6,bzip2默認壓縮級別爲9
要改變壓縮級別,先打包,再用gzip或者bz2壓縮。
補充
linux不支持大於4G的文件的解壓。
解決辦法以下: wget -c http://packages.sw.be/p7zip/p7zip-9.13-1.el5.rf.i386.rpm wget -c http://packages.sw.be/p7zip/p7zip-plugins-9.13-1.el5.rf.i386.rpm 下載完後安裝: rpm -ivh p7zip-9.13-1.el5.rf.i386.rpm rpm -ivh p7zip-plugins-9.13-1.el5.rf.i386.rpm
解壓命令: 7z x 123.zip
利用tar經過網絡拷貝數據
首先切換到要拷貝文件的目錄,
運行tar cvf - test| ssh 10.0.1.11 "cd /copy1/; tar xvf -"
這條命令的意思是,先將要拷貝的目錄打包,而後輸出到目標主機,
後面的tar vxf - 意思是將前面的標準輸出內容做爲解包的對象
總結:其實就是想拷貝的目錄先打包,而後將打包好的文件拷貝到目標主機,最後在目標主機上解包。只不過,咱們用一條命令實現了邊打包邊解包的過程。