[CentOS7] tar打包工具 打包,解包,打包压缩,打包解压缩
声明:本文主要总结自:鸟哥的Linux私房菜-第八章、檔案與檔案系統的壓縮,打包與備份,如有侵权,请通知博主
tar命令
選項與參數:
-c :建立打包檔案,可搭配 -v 來察看過程中被打包的檔名(filename)
-t :察看打包檔案的內容含有哪些檔名,重點在察看『檔名』就是了;
-x :解打包或解壓縮的功能,可以搭配 -C (大寫) 在特定目錄解開
特別留意的是, -c, -t, -x 不可同時出現在一串指令列中。
-z :透過 gzip 的支援進行壓縮/解壓縮:此時檔名最好為 *.tar.gz
-j :透過 bzip2 的支援進行壓縮/解壓縮:此時檔名最好為 *.tar.bz2
-J :透過 xz 的支援進行壓縮/解壓縮:此時檔名最好為 *.tar.xz
特別留意, -z, -j, -J 不可以同時出現在一串指令列中
-v :在壓縮/解壓縮的過程中,將正在處理的檔名顯示出來!
-f filename:-f 後面要立刻接要被處理的檔名!建議 -f 單獨寫一個選項囉!(比較不會忘記)
-C 目錄 :這個選項用在解壓縮,若要在特定目錄解壓縮,可以使用這個選項。
其他後續練習會使用到的選項介紹:
-p(小寫) :保留備份資料的原本權限與屬性,常用於備份(-c)重要的設定檔
-P(大寫) :保留絕對路徑,亦即允許備份資料中含有根目錄存在之意;
--exclude=FILE:在壓縮的過程中,不要將 FILE 打包!
tar [-z|-j|-J] [cv] [-f 待建立的新檔名] filename... <==打包與壓縮
tar [-z|-j|-J] [tv] [-f 既有的 tar檔名] <==察看檔名
tar [-z|-j|-J] [xv] [-f 既有的 tar檔名] [-C 目錄] <==解壓縮
( --源自鸟哥的私房菜)
tarfile: xxx.tar
tarball: xxx.tar.{gz|bz2|xz}
1. 打包成xxx.tar(即tarfile)
用法:tar -cvf xxx.tar xxx ... (多个目录)
2. 解包xxx.tar
用法:tar -xvf xxx.tar
3. 打包成压缩文件(即tarball)
压缩命令有:gzip, bzip2, xz
压缩后的文件后缀为:xxx.gz, xxx.bz2, xxx.xz
打包成压缩文件需要经过2步:
1. 先打包成xxx.tar
2.再压缩为xxx.tar.{gz|bz2|xz}
然而tar已经可以通过命令一步完成以上过程,下面只拿gzip这个压缩命令来说,bzip2和xz的用法与其一样:
-z: 使用gzip命令进行压缩/解压缩
-j: 使用bzip2命令进行压缩/解压缩
-J: 使用xz命令进行压缩/解压缩
-c: 压缩
-x: 解压缩
-t: 查看tar文件内容
-v: 显示压缩或解压缩的过程
(1). 使用tar进行打包压缩成xxx.tar.gz
用法:tar -zcvf xxx.tar.gz xxx ...(多个目录)
(2). 使用tar查看压缩包内的内容
用法:tar -ztvf xxx.tar.gz
(3). 使用tar解压缩xxx.tar.gz文件
用法:tar -zxvf xxx.tar.gz
(4). 使用tar解压缩xxx.tar.gz文件到指定的目录(该目录需已经存在)
用法:tar -zxvf xxx.tar.gz -C destdir
(5). 使用tar解压缩xxx.tar.gz中某个文件
用法: tar -zxvf xxx.tar.gz aaa/bbb