1. 程式人生 > >liunx文件操作 文件壓縮

liunx文件操作 文件壓縮

sch 輸入 意思 最大 命名 追加 組織 gzip 屬性

文件備份和壓縮命令

在Linux中,常用的文件壓縮工具有gzip,bzip2,zip。
'bzip2'是最理想的壓縮工具,它提供了最大限度的壓縮。
'zip'兼容好,windows也支持。

bzip2命令

bzip2 是一個壓縮能力更強的壓縮程序,.bz2結尾的文件就是bzip2壓縮的結果。
要使用bzip2壓縮文件,在shell提示下輸入命令:
bzip2 filename 
文件即會被壓縮,並保存為filename.bz2
要解壓文件,輸入命令:
bunzip2 filename.bz2 
filename.bz2 會被刪除,而以filename代替
bzip2 filename.bz2 file1 file2 /usr/ssgao
上面的命令把file1,file2,file3 以及/usr/ssgao目錄中的內容壓縮至filename.bz2

gzip 命令

'gzip 源文件'
gzip filename 文件即會被壓縮,並保存為filename.gz
要解壓縮文件,輸入命令:
'gunzip filename.gz'
filename.gz會被刪除,而以filename代替
'gzip -r filename.gz file1 file2 /usr/work/school'
'-r' 表示壓縮目錄
上面的命令把file1,file2 以及/usr/work/school目錄中的內容壓縮起來放入 filename.gz
'gzip -r 目錄'
壓縮目錄下的所有子文件,但不能壓縮目錄

zip 命令

Linux下提供了zip和unzip程序
'zip'為壓縮程序
'zip 壓縮文件名 源文件' ? ? #壓縮文件
'zip -r 壓縮文件名 源目錄' #壓縮目錄
[root@ssgao1987 home]# zip home.zip /
'unzip'為解壓程序
--------------------------------
'zip all.zip *.jpg' 
該命令是將所有的.jpg的文件壓縮成一個zip包
'unzip all.zip' 
命令是將all.zip中的所有文件解壓出來

tar命令

tar命令把大量的文件和目錄打包成一個文件。
比如,gzip不能壓縮目錄,可以先使用tar命名把對應的文件打包成x.tar文件,然後使用gzip進行壓縮。
'-c' ?創建下一個新歸檔
'-f' ?當與-c選項一起使用時,創建的tar文件使用該選項指定的文件名;當與-x選項一起使用的時候,則解除該選項指定的歸檔
'-t' 顯示包括在tar文件中的文件列表
'-v' 顯示文件的歸檔進度
'-x' 從歸檔中抽取文件
'-z' 使用gzip 壓縮tar文件
'-j' 使用bzip2 壓縮tar文件
'tar -cvf 打包文件名 源文件' 
打包成x.tar文件
    tar -zcvf 壓縮包名.tar.gz 源文件
壓縮為.tar.gz格式
    tar -zxvf 壓縮包名.tar.gz
解壓縮x.tar.gz格式文件

指定解壓縮位置
    tar -zxvf jp.tar.gz -C /home/ssgao/
只查看壓縮文件內容,不進行解壓縮
    tar -ztvf jp.tar.gz 
    ps: -f 使用檔案名字,切記,這個參數是最後一個參數,後面只能是tar文件名
要創建一個tar文件,輸入命令:
    tar -cvf filename.tar usr/ssgao /home/mine
    ps: 上面的命令將usr/ssgao 和 home/mime放入歸檔文件中。
列出tar文件的內容,輸入命令:
    tar -tvf filename2.tar
抽取tar文件的內容,輸入命令:
    tar -xvf filename.tar
    ps:上面的命令不會刪除tar文件,但會把解除歸檔的內容復制到當前文件工作目錄並保留歸檔文件所使用的任何目錄結構,請記住,tar默認不壓縮文件。
?
要創建一個使用tar和bzip2來歸檔壓縮的文件,使用-j選項:
    tar -cjvf filename.tbz file
?
如果使用bunzip2命令解壓filename.tbz文件,則filename.tbz會被刪除,以filename.tar代替
要擴展並解除歸檔bzip.tar文件,輸入命令:
    tar -xjvf filename.tbz
?
要創建一個用tar和gzip歸檔並壓縮的文件,使用-z選項:
    tar -czxf filename.tgz file
    ps: 如果使用gunzip命令解壓filename.tgz文件,則filename.tgz會被刪除
 tar 的命令選項有很多(用man tar可以查看到),但常用的就那麽幾個選項,實例如下:
   tar -cf all.tar *.jpg
    ps ->將所有的.jpg文件打成一個名為all.tar的包。-c表示產生新的包,-f指定包的文件名
    tar -rf all.tar *.gif
    ps ->該命令是將所有的gif文件增加到all.tar的包裏面去。-r表示增加文件的意思。
    tar -uf all.tar logo.gif
    ps ->該命令是更新原來tar包all.tar中的logo.gif文件,-u表示更新文件
    tar -tf all.tar
    ps ->該命令是列出all.tar包中的所有文件,-t表示列出文件的意思
    tar -xf all.tar
    ps ->該命令是解出all.tar包中的所有文件,-x表示解開的意思
    

tar 調用gzip

gzip是GUN組織開發的一個壓縮程序,.gz結尾的文件就是gzip壓縮的結果。與gzip相對的解壓程序是gunzip。
tar中使用-z這個參數來調用gzip。
tar -zczf all.tar.gz *.jpg
ps->該命令是將所有的.jpg文件打成一個tar包,並且將其用gzip壓縮,生成一個gzip壓縮過的包,包名:all.tar.gz
tar -zxzf all.tar.gz 
ps->該命令用於解開上面壓縮的包

tar 調用bzip2

tar中使用-j這個參數來調用gzip。
tar -cjf all.tar.bz2 *.jpg
ps-》這條命令是將所有的.jpg文件打成一個tar包,並且將其用bzip2壓縮,生成一個bzip2壓縮過的包,包名為 all.tar.bz2
tar -xjf all.tar.bz2
ps-》該命令是將上面產生的包解開

tar 調用compress

compress也是一個壓縮程序,但是好像使用compress的人不如gzip和bzip2的人多。.Z結尾的文件就是compress壓縮的結果。
與compress相對的解壓程序是uncompress。tar中使用-Z參數調用compress
tar -cZf all.tar.Z *.jpg 
ps->將所有的.jpg文件打成一個tar包,並且將其用compress壓縮,生成一個uncompress壓縮過的包,包名為all.tar.Z
tar -xZf all.tar.Z
ps->該命令是將上面產生的包解開

tar命令總結

tar
-c 建立壓縮檔案
-x 解壓
-t 查看內容
-r 向壓縮歸檔文件末尾追加文件
-u 更新壓縮包中的文件
上面五個參數是獨立的,壓縮/解壓都要用到其中的一個,可以和別的命令連用,但只能用其中的一個
-z gzip屬性
-j bz2屬性
-Z compress屬性
-v 顯示所有過程
-O 將文件解開到標準輸出
-----------------------------------------------------------------------------------
必不可少的參數
-f 使用檔案名字,切記,這是最後一個參數,後面只能接檔案名

tar -cvf jpg.tar *.jpg 
將目錄裏所有的jpg文件打包成tar.jpg
tar -czf jpg.tar.gz *.jpg 
將目錄中的jpg文件打包成jpg.tar後,並用gzip壓縮,生成一個gzip壓縮過的包
tar -cjf jgp.tar.bz2 *.jpg 
將目錄中的jpg文件打包成jpg.tar後,並用bzip2壓縮,生成一個bzip2壓縮過的包
tar cZf jpg.tar.Z *.jpg
將目錄中的jpg文件打包成jpg.tar後,並用compress壓縮,生成一個compress壓縮過的包
-----------------------------------------------------------------------------------
解壓
tar -xvf file.tar  解壓tar包
tar -xzvf file.tar.gz 解壓tar.gz
tar -xjvf file.tar.bz2 解壓tar.bz2
tar -xZvf file.tar.Z 解壓tar.Z
-----------------------------------------------------------------------------------
*.tar 用 tar –xvf 解壓 
*.gz 用 gzip -d或者gunzip 解壓 
*.tar.gz和*.tgz 用 tar –xzf 解壓 
*.bz2 用 bzip2 -d或者用bunzip2 解壓 
*.tar.bz2用tar –xjf 解壓 
*.Z 用 uncompress 解壓 
*.tar.Z 用tar –xZf 解壓 

liunx文件操作 文件壓縮