《LINUX教程:Linux下打包與壓縮簡述》要點:
本文介紹了LINUX教程:Linux下打包與壓縮簡述,希望對您有用。如果有疑問,可以聯系我們。
Linux壓縮或解壓縮對象有很多,除了已經很少有人使用的compress外,現在常用的還有tar,bzip2,xz 和gziplinux壓縮或解壓縮對象有很多,除了已經很少有人使用的compress外,現在常用的還有tar,bzip2,xz 和gzip等,我們來說說它們的用法.
先來說bzip2.bunzip2和bzcat可以由bzip2指定選項來執行同樣的成果,這里只介紹bzip2的用法.使用bzip2這個工具創建的文件以.bz2,.bz,.tbz,.tar.bz2或者.tbz2結尾.
bzip2 [選項] [文件]
常用選項:
bzip2 -d 解壓縮文件
bzip2 -c 將壓縮或解壓縮的結果送到標準輸出
bzip2 -f 使用此選項,在解壓縮文件時,若輸出文件與現有文件同名,則覆蓋同名的文件
bzip2 -k 在壓縮或解壓縮文件之后,保存原始文件
bzip2 -s 解壓或壓縮文件時,降低內存使用量
bzip2 -t 測試文件的完整性
bzip2 -v 壓縮或解壓縮文件時,顯示具體過程
bzip2 -z 強制壓縮一個文件
bzip2 -# 指定壓縮比率
xz同樣也是linux下出色的壓縮工具,lunxz,xzcat,lzma,unlzma,lzcat命令可以由xz命令調用指定的選項來執行,因此只介紹xz命令的用法.xz命令生成的文件通常以.xz或者.lzma格式結尾.
xz [選項] [文件]
常用選項有:
xz -z 壓縮一個文件
xz -d 解壓縮文件
xz -t 測試文件的完整性
xz -l 查看一個壓縮文件的信息
xz -k 壓縮完文件后不刪除原始文件
xz -f 使用此選項時,若目標文件存在,則刪除原始文件,再解壓
xz -c 將執行命令的結果輸出到標準輸出
xz -F 指定壓縮或解壓縮文件的格式
xz -# 指定壓縮文件時的壓縮比率
linux上還有一個常用的解壓工具,便是gzip了.同linux下其它工具一樣,gunzip,zcat也可以由gzip指定的選項來執行,因此只介紹gzip命令的用法.用gzip命令創建的文件通常以.gz,.tar.gz,.tar.Z或者.tgz結尾.
gzip [選項] [文件]
常用選項有:
gzip -c 將命令的執行結果輸出到標準輸出
gzip -d 解壓縮文件
gzip -f 使用此選項時,若目標文件存在,則刪除原始文件,再解壓
gzip -l 列出這個壓縮文件的具體信息
gzip -n 解壓縮文件時,忽略文件中原來的時間戳
gzip -N 解壓縮文件時,保存文件中原始的時間戳
gzip -r 將指定目錄下的所有文件及子目錄一起壓縮
gzip -t 測試文件的完整性
gzip -v 顯示壓縮或解壓縮的具體過程
gzip -# 指定壓縮比率
再來說說tar這個非常強大的工具吧. tar最初是為了做磁帶備份而設計的,它的作用是把文件和目錄備份到磁帶中,然后再從磁帶中提取或恢復文件.現在可以使用tar命令來備份數據到任何存儲介質上.tar是文件級備份,不必考慮底層文件系統類別,并且支持增量備份.tar命令創建的文件通常以.tar結尾,tar命令可以調用gzip,bz2或者xz工具來壓縮或解壓縮指定的文件.
tar [選項] [文件]
常用選項有:
tar -z 壓縮或解壓縮一個文件
tar -x 從file.tar壓縮包中提取所有文件
tar -A 追加一個壓縮包到一個檔案內
tar -c 創建了個壓縮檔案
tar -d 比較一個壓縮檔案和被壓縮文件的區別
tar -r 追加文件到指定的壓縮包中
tar -t 測試文件的完整性
tar -u 增量備份文件,只備份比壓縮包中已經備份文件新的文件
tar -x 從一個壓縮包中提取出文件
tar -C 解壓縮文件到指定的目錄
tar -f 指定要壓縮或解壓縮的文件
tar -j 調用bzip2來壓縮或解壓縮文件
tar -J 調用xz來壓縮或解壓縮文件
tar -p 解壓縮文件時保存原始文件的權限
tar -v 顯示壓縮或解壓縮的過程
tar -z 調用gzip來壓縮或解壓縮文件
tar -P 保存原始文件的絕對路徑,解壓時自動解壓到絕對路徑下
tar --exclude 打包目錄時,不打包指定的文件
工具的用法都已經說完了,現在來看看實際工作中的用法.
例1:把系統中的/etc目次備份到/home目次下備份后的文件名為etc.backup的文件, 可以使用
#tar -jcvf etc.backup.tar.bz2 /etc
來把/etc/目錄打包備份成結尾為tar.bz2的緊縮包,也可以使用
#tar -zcvf etc.backup.tar.gz /etc
來把/etc/目錄打包備份成結尾為tar.gz的緊縮包,還可以使用
#tar -Jcvf etc.backup.tar.xz /etc
來把/etc/目錄打包備份成結尾為tar.xz的緊縮包
[root@localhost ~]# tar -jcvf /home/etc_backup.tar.xz /etc
/etc/
/etc/pm/
/etc/pm/power.d/
/etc/pm/sleep.d/
/etc/pm/config.d/
/etc/libuser.conf
/etc/security/
/etc/security/namespace.d/
...
[root@localhost ~]# ls -lah /home
total 8.0M
-rw-r--r-- 1 root root 8.0M Apr 16 12:18 etc_backup.tar.xz
同樣的,已經我們會看到各種格局的壓縮文件,這時候我們可以使用tar xf filename.tar來解壓這個壓縮包.
例2:我們在某個目錄下有個Python-2.7.9.tar.xz和pip-1.4.1.tar.gz的文件,我們可以使用如下命令來解壓這兩個緊縮包.
[root@localhost ~]# tar xf Python-2.7.9.tar.xz
[root@localhost ~]# tar xf pip-1.4.1.tar.gz
[root@localhost ~]# ls -Alh
total 13M
drwxr-xr-x 17 1000 1000 4.0K Dec 11 2014 Python-2.7.9
-rw-r--r-- 1 root root 12M Apr 16 12:24 Python-2.7.9.tar.xz
drwxr-xr-x 5 501 games 4.0K Aug 8 2013 pip-1.4.1
-rw-r--r-- 1 root root 435K Apr 16 12:24 pip-1.4.1.tar.gz
我們可以看到,tar沒有指定使用哪個工具來解壓這兩個分歧格式的壓縮包,這兩個壓縮包也已經被成功解壓了.實際上,tar命令會根據后面所接的壓縮包的格式自動調用解壓工具,這樣以后再看到分歧格式的壓縮文件,我們就可以使用tar xf tar_file這個命令來解壓壓縮包了,so easy吧!!!
本文永遠更新鏈接地址:
學習更多LINUX教程,請查看站內專欄,如果有LINUX疑問,可以加QQ交流《LINUX教程:Linux下打包與壓縮簡述》。