-
Linux文檔的壓縮與打包
-
概述
-
compress和uncompress
-
gzip壓縮工具
-
bzip2壓縮工具
-
zip壓縮工具
-
tar壓縮工具
-
cpio壓縮工具(主要用來備份還原)
Linux文檔的壓縮與打包
概述
本章將介紹Linux系統中的壓縮和解壓縮的工具,以及歸檔工具(tar,cpio)
compress/uncompress: //對應 .Z 結尾的壓縮格式文件;
gzip/gunzip: //其對應的是 .gz 結尾的壓縮格式文件;
bzip2/bunzip2: //其對應的是 .bz2 結尾的壓縮格式文件;
zip/unzip //其對應的是 .zip 結尾的壓縮格式文件
tar //可以為目錄打包,指定以上的所有壓縮格式
compress和uncompress
語法:compress [-dfvcVr] [-b maxbits] [file …]
-d
: 解壓縮,相當于 (可以配合 -c 保留壓縮文件) -c
: 結果輸出至標準輸出,不刪除原文件 -v
: 顯示詳情
[root@localhost ~]# cd /tmp
[root@localhost tmp]# cp /etc/man.config .
[root@localhost tmp]# compress man.config
//uncompress解壓縮
[root@localhost tmp]# uncompress man.config.Z
gzip壓縮工具
語法: gzip [-d#] filename 其中#為1-9的數字
“-d”
: 解壓縮時使用 “-#”
: 壓縮等級,1壓縮最差,9壓縮最好,6為默認
[root@localhost tmp]# gzip man.config //壓縮文件
[root@localhost tmp]# ls
ks-script-BKWeFw ks-script-BKWeFw.log man.config.gz yum.log
[root@localhost tmp]# gzip -d man.config.gz //解壓文件
[root@localhost tmp]# ls
ks-script-BKWeFw ks-script-BKWeFw.log man.config yum.log
//gzip 是不支持壓縮目錄的。
bzip2壓縮工具
語法: bzip2 [-dz] filename
bzip2 只有兩個選項需要你掌握。 “-d”
: 解壓縮 “-z”
: 壓縮 "-k"
: keep, 保留原文件
壓縮時,可以加“-z”
也可以不加,都可以壓縮文件,”-d”
則為解壓的選項:
[root@localhost tmp]# bzip2 man.config //壓縮文件
[root@localhost tmp]# ls
ks-script-BKWeFw ks-script-BKWeFw.log man.config.bz2 yum.log
[root@localhost tmp]# bzip2 -d man.config.bz2 //解壓文件
[root@localhost tmp]# ls
ks-script-BKWeFw ks-script-BKWeFw.log man.config yum.log
//bzip2 同樣是不支持壓縮目錄的。
zip壓縮工具
zip命令可以用來解壓縮文件,或者對文件進行打包操作。zip是個使用廣泛的壓縮程序,文件經它壓縮后會另外產生具有“.zip”擴展名的壓縮文件。
將/home/Blinux/html/這個目錄下所有文件和文件夾打包為當前目錄下的html.zip:
[root@localhost /]# zip -q -r home.zip /home/
unzip命令用于解壓縮由zip命令壓縮的“.zip”壓縮包。
[root@localhost /]# unzip home.zip
tar壓縮工具
tar 本身為一個打包工具,可以把目錄打包成一個文件,它的好處是它把所有文件整合成一個大文件整體,方便拷貝或者移動。
語法:tar [-zjxcvfpP] filename tar 命令有多個選項
常用選項 “-z”
: 同時用gzip壓縮 “-j”
: 同時用bzip2壓縮 “-x”
: 解包或者解壓縮 “-t”
: 查看tar包里面的文件 “-c”
: 建立一個tar包或者壓縮文件包 “-v”
: 可視化 “-f”
: 后面跟文件名,壓縮時跟 “-f 文件名”,意思是壓縮后的文件名為filename, 解壓時跟 “-f 文件名”,意思是解壓filename. 請注意,如果是多個參數組合的情況下帶有 “-f”,請把 “-f” 寫到最后面。
實例:
(1) 創建歸檔
[root@localhost /]# tar cvzf home.tar.gz /home
(2) 查看歸檔文件中的文件列表
[root@localhost /]# tar -tf home.tar.gz
(3) 展開歸檔
[root@localhost /]# tar -zxvf home.tar.gz
[root@localhost /]# tar -zxvf home.tar.gz -C /tmp/
cpio壓縮工具(主要用來備份還原)
cpio命令主要是用來建立或者還原備份檔的工具程序,cpio命令可以復制文件到歸檔包中,或者從歸檔包中復制文件。 cpio 命令是通過重定向的方式將文件進行打包備份,還原恢復
的工具,它可以解壓以“.cpio” 或者“.tar” 結尾的文件。
cpio [ 選項] > 文件名或者設備名
cpio [ 選項] < 文件名或者設備名
選項 -o
將文件拷貝打包成文件或者將文件輸出到設備上 -i
解包,將打包文件解壓或將設備上的備份還原到系統 -t
預覽,查看文件內容或者輸出到設備上的文件內容 -v
顯示打包過程中的文件名稱。 -d
解包生成目錄,在cpio 還原時,自動的建立目錄 -c
一種較新的存儲方式 -B
:將輸入/輸出的區塊大小改成5210Bytes;
將/etc下的所有普通文件都備份到/opt/etc.cpio,使用以下命令:
find /etc –type f | cpio –ocvB >/opt/etc.cpio
內容預覽
[root@localhost tmp]# cpio -tv < /opt/etc.cpio
備份包還原到相應的位置,如果有相同文件進行覆蓋,使用以下命令:
[root@localhost tmp]# cpio -icduv < /opt/etc.cpio
原創文章,作者:M20_he,如若轉載,請注明出處:http://www.www58058.com/43745