linux所有文件打包压缩,Linux基础教程:对文件打包压缩
一、須知
文件數(shù)量太多, 如果需要拷來拷去是不是很麻煩?? ? 怎么辦?? 打包!
文件太大,通過網(wǎng)絡(luò)下載、傳輸會不會很費時間?? ? 怎么辦?? 壓縮!
在Linux環(huán)境中,打包壓縮文件的擴(kuò)展名多是:【*.tar, *.tar.gz, *.gz, *.bz2, *.tar.xz】這些文件統(tǒng)稱為“tar”包, 想想為什么會有這樣的擴(kuò)展名么? 不是說過 Linux的擴(kuò)展名沒有什么用嗎?? 【不同的后綴,表明所使用的壓縮算法不同, 壓縮比從低到高的排序是: gz < bz2 < xz ; 壓縮速度則正好相反 gz > bz2 > xz】
是的。 文件擴(kuò)展名對于Linux來說, 并沒有任何卵用。 然而、但是, 由于Linux支持的壓縮命令很多,而且不同指令所采用的壓縮技術(shù)不相同,當(dāng)然彼此之間可能就無法互通(壓縮、解壓縮)。所以, 當(dāng)我們下載到某個壓縮文件時,自然就需要知道該檔案是由哪種壓縮指令制作的,好用來對照進(jìn)行解壓縮。
也就是說,雖然Linux文件的擴(kuò)展名和其屬性沒有絕對關(guān)系,但是為了便于我們易于識別,所以適當(dāng)?shù)臄U(kuò)展名還是必要的。
打包: 實質(zhì)將許多文件和目錄打包成一個文件。
壓縮:把大文件或目錄通過壓縮算法變成一個較小的文件。
大多命令僅能針對單一文件來進(jìn)行壓縮,gzip與bzip2也能對目錄進(jìn)行壓縮,但是結(jié)果為:將目錄內(nèi)的所有文件“分別、單獨”進(jìn)行壓縮操作。
一、文件的打包和壓縮
tar : 打包、壓縮一個命令全搞定。? 版本稍高的 tar 命令, 選項前的 - , 是可選的。
解壓縮“tar”包非常簡單,只需要這樣:
12 $? tar? xf? filename
$? tar? xf? filename? -C /tmp? ? # 解壓到/tmp目錄
注意: filename 就是需要解壓縮"tar"包的文件名,而且使用后一種形式的時候,選項 f 一定要放到最后。
創(chuàng)建“tar”包
1 $? tar -cvf? filename.tar? FILES
指定壓縮算法: z 代表 gz, j 代表 bz2, J 代表 xz。
123 $? tar? -zcvf? filename.tar.gz? FILES
$? tar? -jcvf? filename.tar.bz2? FILES
$? tar? -Jcvf? filename.tar.xz? FILES
注意:其中FILES表示被打包盒壓縮的文件或目錄名。
僅解開單一文件的方法
1234 ## 首先 –jtvf 查看需要解壓的文件名
tar -jtvf filename.tar.bz2? ? # 查詢需要解壓的文件名:假設(shè)為 etc/abc。
## 解壓,指定 etc/abc 文件名
tar –jxvf filename.tar.bz2? etc/abc
記憶: 記住 tar xvf? 然后 把 x 位置替換為 c , t 就行了。
壓縮(選項:c):tar –jcvf? filename,tar.bz2? ? 要被壓縮的文件或目錄名稱(可多個)
查詢(選項:t):tar –jtvf? filename,tar.bz2
解壓縮(選項:x):tar –jxvf? filename.tar.bz2 –C? 欲解壓縮的目錄
因為-f參數(shù)后必須緊接 “要新創(chuàng)建的文件名”。
tar默認(rèn)情況下會把絕對路徑前的 / 去掉, 這樣在恢復(fù)的時候, 如果不用-C / 指定根目錄為其相對目錄, tar會在把解包后的目錄結(jié)構(gòu)放在當(dāng)前目錄。如果需要用絕對路徑解壓或者壓縮呢, 使用-P選項吧
gzip & bzip2命令
gzip 常用選項:
-c? ? : 將壓縮輸出到 stdout,可通過重定向處理
-d? : 解壓縮
-v? : 詳細(xì)信息
-#? : 壓縮比 1-9
bzip 同gzip的用法一樣。-k選項 保留原文件
總結(jié):
gzip和bzip2 不會保留原文件,而新生成一個壓縮文件
只能對單個文件壓縮
zip & unzip 命令:
# zip all.zip *.jpg? ? #這條命令是將所有.jpg的文件壓縮成一個zip包
# unzip all.zip? ? ? ? #解壓縮
總結(jié)
以上是生活随笔為你收集整理的linux所有文件打包压缩,Linux基础教程:对文件打包压缩的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 用html5做淡出淡入效果,在Html5
- 下一篇: strtus2改成springboot_
