tar命令打包和壓縮與解壓


Linux里壓縮與打包時分開的:

打包:多個文件變一個文件。該一個文件會大於整體所有文件,因為會添加各個信息說明哪到哪是一個文件.

壓縮:大文件變小文件。

歸檔:將多個文件變成一個文件,這個文件就是歸檔文件.

打包命令:  tar  -cvf 歸檔路徑  被打包文件路徑。

(c--create archive   v-verbose  f  --file ,f指歸檔路徑,故f必須放在其他選項之后,而且-可省略不寫)

單獨打包命令:  tar -cvf 歸檔路徑 被打包路徑.  (整體文件變大,后綴一般是.tar)

gzip壓縮命令:     tar -zcvf 歸檔路徑 被打包路徑.  (gun-zip壓縮,后綴一般是.tar.gz)

bzip2壓縮命令:   tar -jcvf  歸檔路徑 被打包路徑.  (bzip2壓縮,后綴一般是.tar.bz2)

例子:

[root@lbg test]# ls

a  b  c  d

[root@lbg test]# tar -cvf test.tar a b c d  ---將文件abcd打包為test.tar

[root@lbg test]# ls

a  b  c  d  test.tar

可以單獨的打包,但不可單獨的壓縮,單獨的-z命令是不行的.

[root@lbg test]# tar -zcvf test.tar.gz a b c d     ---打包並gzip壓縮。

[root@lbg test]# ls

a  b  c  d  test.tar  test.tar.gz

[root@lbg test]# tar -jcvf test.tar.bz2 a b c d  ---打包並bzip2壓縮。

[root@lbg test]# ls

a  b  c  d  test.tar  test.tar.bz2  test.tar.gz

打包時歸檔路徑可以相對/絕對路徑,被打包文件路徑最后是相對路徑,用絕對路徑也可以,但會有警告.另外如果是絕對路徑,則會打包的是該絕對路徑下的文件,而非目錄下的具體文件.

 

解壓:

拆包時有同名文件會直接覆蓋,tar打包的都可拆,加不加z .j都可。

但如果加了z或j,就只能拆對應的zip或bzip2格式的包.

拆包命令:(-x 拆包  -C 指定解壓路徑)

 tar -xvf 歸檔文件路徑   ---可拆tar/gzip/bzip2格式的包

tar -zxvf 歸檔文件路徑   ---只可拆gzip格式的包

tar-jxvg 歸檔文件路徑    ---只可拆bzip2格式的包

 unzip  test.zip                                  --拆zip格式的包


解壓到指定位置的命令:tar -xvf  test.tar  -C  /tmp  --解壓指定位置:到/tmp里,加-C (C --change dir.)

另外:選項中-可省略,v和省略.故可以:

tar  xvf  test.tar    ----或者 ----tar  xf  test.tar

Linux里一般不用zip包,但有的話,解壓命令是:   unzip  test.zip  

例子:

[root@lbg test]# tar -xvf test.tar -C /test/bb     

[root@lbg test]# tar -zxvf test.tar.gz -C /test/bb

[root@lbg test]# tar -jxvf test.tar.bz2 -C /test/bb

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM