1. 程式人生 > >Linux打包和壓縮-tar-zip-dh-unzip-rar-unrar

Linux打包和壓縮-tar-zip-dh-unzip-rar-unrar

建立一個tar包

tar -cf ynotetest.tar 目錄

*.tar字尾不影響打包,只起到方便管理員識別的作用 不要重名,會覆蓋 c 建立文件 t 列出文件內容 x 提取文件 f filename 要操作的文件名 v 詳細資訊 P保留絕對路徑

解包一個檔案 (-x引數) 到指定路徑的已存在目錄 (-C引數)

tar -xf test.tar -C tardir

只檢視不解包檔案-t引數

tar -tf test.tar

保留檔案屬性和跟隨連結(符號連結或軟連結),有時候我們使用tar備份檔案當你在其他主機還原時希望保留檔案的屬性(-p引數)和備份連結指向的原始檔而不是連結本身(-h引數)

tar -cphf etc.tar /etc

壓縮

tar -czf etc.tar.gz ~

z gzip 最常用 j bzip2 更小,但效能要求更高 J xz 比bzip2還小,也更慢

解壓 *.tar.gz 檔案

tar -xzf etc.tar.gz

zip壓縮打包程式 將 test 目錄打包成一個檔案,-r 表示遞迴打包包含子目錄的全部內容,-q 表示安靜模式,-o 表示輸出檔案,其後緊跟打包輸出檔名

zip -r -q -o test.zip  /home/test

使用 du 命令檢視打包後文件的大小。-h 友好顯示資訊

du -h test.zip

使用 file 命令檢視檔案大小和型別

file test.zip

-r 遞迴壓縮 -q 靜默壓縮 -o 壓縮檔案命名 -e 加密壓縮檔案(不加密檔名) -l 將LF轉換為CR+LF 設定壓縮級別為9和1(9最大,1最小),重新打包 1表示最快壓縮但體積大,9表示體積最小但耗時最久,-x 排除上一次我們建立的zip檔案,路徑必需為絕對路徑

zip -r -9 -q -o test_9.zip /home/test -x ~/*.zip
zip -r -1 -q -o test_1.zip /home/test -x ~/*.zip

解包zip檔案

unzip test.zip

-q 靜默解壓 -l 不解壓僅檢視壓縮包內容 -O 使用其它編碼,防止中文亂碼

unzip -O GBK 中文壓縮檔案.zip

rar打包壓縮程式 yum裡沒有提供相關的包,所以要用wget(Linux下的一個下載工具)命令去下載它 如果未安裝wget,通過yum安裝

yum install wget.x86_64

去官網(https://www.rarlab.com/)檢視下最新的包,我是CentOS7x64,所以安裝LinuxX64版本

wget https://www.rarlab.com/rar/rarlinux-x64-5.6.1.tar.gz

用tar命令解包

tar -xzf rarlinux-x64-5.6.1.tar.gz

這時當前目錄下會有一個rar資料夾,我們進去康康

cd rar
ls rar

這時會發現裡面有已經寫好的makefile了,這是一個安裝指令碼,那直接輸入

make

就安裝成功了,許可權不夠用

sudo make

建立一個rar壓縮檔案 rar 的命令引數沒有-,如果加上會報錯。 a 壓縮檔名 檔案或目錄 a 新增到壓縮檔案 d 從壓縮檔案刪除 l 檢視壓縮檔案內容 從指定壓縮包檔案中刪除某個檔案

rar d test.rar .bashrc

檢視不解壓檔案

rar l test.rar

使用 unrar 解壓 rar 檔案 全路徑解壓

unrar x test.rar

x 完整路徑解壓 e 去掉路徑解壓

去掉路徑解壓

unrar e test.rar tmp/