4 2 檔案的壓縮與打包

2021-08-18 17:30:43 字數 3217 閱讀 6538

compress

compress命令用於將檔案壓縮為 .z 格式的壓縮檔案。

語法:compress [選項] 檔案

選項

-d: 解壓縮,相當於uncompress

-c: 結果輸出至標準輸出,不刪除原檔案

-v: 顯示詳情

gzip

gzip命令用於將檔案壓縮為 .gz 格式的壓縮檔案。

語法:gzip [選項] 檔案

選項

-d: 解壓縮,相當於uncompress

-c: 結果輸出至標準輸出,不刪除原檔案

-v: 顯示詳情

-#:1-9,指定壓縮比,值越大壓縮比越大

compress與gzip的壓縮檔案,可以使用zcat工具直接檢視,即使不是.z或者.gz字尾。

bzip2

bzip2命令用於將檔案壓縮為 .bz2 格式的壓縮檔案。

語法: bzip2 [選項] 檔案

選項

-d: 解壓縮,相當於bunzip2

-c: 結果輸出至標準輸出,不刪除原檔案

-v: 顯示詳情

-#:1-9,指定壓縮比,值越大壓縮比越大

-k: keep, 保留原檔案

bzip2可以使用bzcat工具可以在不解壓的狀況下檢視檔案。

xz

xz命令用於將檔案壓縮為 .xz 格式的壓縮檔案。

語法: xz [選項] 檔案

選項

-d: 解壓縮,相當於unxz

-c: 結果輸出至標準輸出,不刪除原檔案

-v: 顯示詳情

-#:1-9,指定壓縮比,值越大壓縮比越大

-k: keep, 保留原檔案

xz可以使用xzcat工具可以在不解壓的狀況下檢視檔案。但是解壓時所有壓縮工具會對檔案的字尾進行識別。

使用-c選項可以實現重定向壓縮到指定路徑,預設命令會將檔案壓縮(解壓)至檔案所在目錄。但是因為只是重定向輸出結果,與直接壓縮(解壓)不同,壓縮(解壓)後的檔案並不保留原始檔的屬性(時間,許可權),直接壓縮只會修改檔案的ctime。

[root@centos7 bin]# compress -c sumspace.sh > /data/sum.z
[root@centos7 bin]# compress -cd /data/sum.z > /root/bin/sum
壓縮工具只能壓縮乙個檔案,即使輸入多個檔案,也只能將每個檔案單獨壓縮,所以當需要將多個檔案壓縮為乙個壓縮檔案時,就需要用到tar命令,對多個檔案進行打包為乙個檔案後壓縮。

tar

命令用於將多個檔案歸檔,可以搭配壓縮工具實現多個檔案的共同壓縮。

語法:tar cxtru [選項] 檔案

第乙個選項是必選項,而且c、x、t、r、u中只能同時選擇乙個。而第二個選項則可以同時選多個,也可以不選。

選項

-c: 建立壓縮檔案

-x:解壓

-t:檢視內容

-r:向壓縮歸檔檔案末尾追加檔案

-u:更新原壓縮包中的檔案

-z:有gzip屬性的

-j:有bz2屬性的

-j:有xz屬性的

-z:有compress屬性的

-v:顯示所有過程

-p:保留檔案的原有屬性

-f:自定義歸檔案名字,必須是所有選項的最後乙個

將當前目錄下的所有指令碼檔案歸檔後壓縮為乙個名為script.tar.gz的gz壓縮檔案

[root@centos7 bin]# tar -zcf script.tar.gz *.sh

-t、-x:過濾指定的檔案

[root@centos7 bin]# tar -cvf script.tar -t /data/tar.txt -x /data/extar.txt
-t後使用需要打包的路徑,-x後使用需要忽略打包的路徑。

注意:在進行打包時盡量使用相對路徑,並且在打包檔案的非當前目錄進行打包,否則會出現

tar: removing leading `/' from member names  tar命令自動忽略'/',以避免在解壓時將原檔案覆蓋
tar: /root/bin/script.tar: file is the archive; not dumped  tar命令警告正在當前目錄進行打包
split命令用於將乙個檔案切割成指定大小的數個檔案。

語法:split -b 大小 [-d] 目標檔案 輸出檔案字首

-d選項可以將輸出檔案的字尾指定為數字,預設為字母。

[root@centos7 bin]# split -b 5k -d script.tar script

[root@centos7 bin]# ls script*

script00 script01 script02 script03 script.tar

cpio

命令可以從 cpio 或 tar 格式的歸檔包中存入和讀取檔案。

語法:cpio [選項] >/< 檔案/裝置

選項

-o 將檔案拷貝打包成檔案或者將檔案輸出到裝置上

-i 解包,將打包檔案解壓或將裝置上的備份還原到系統

-t 預覽,檢視檔案內容或者輸出到裝置上的檔案內容

-v 顯示打包過程中的檔名稱。

-d 解包生成目錄,在cpio還原時,自動的建立目錄

[root@centos7 bin]# find -name "*.sh" -print | cpio -ov > /data/cpio.tar

20181218檔案壓縮和打包

命令 gzip gunzip gzip壓縮和gunzip解壓 用法 gzip gunzip是用來壓縮和解壓單個檔案 如 在 root目錄下壓縮install.log檔案,壓縮後生成的檔案是install.log.gz檔案,然後在使用gunzip檔案將其解壓縮,命令如下 root localhost ...

Linux學習6 檔案打包與壓縮

在 windows 上最常見的不外乎這三種 zip,rar,7z 字尾的壓縮檔案。而在 linux 上面常見的格式除了以上三種外,還有 gz,xz,bz2,tar,tar.gz,tar.xz,tar.bz2,簡單介紹如下 不過我們一般只需要掌握幾個命令即可,包括 zip,rar,tar。1 使用zi...

5 檔案許可權 檔案壓縮打包

命令 解釋ls lh 顯示許可權 chmod ugo rwx dir1 新增所有者 群組 其他人在dir1的讀 寫 執行許可權 chmod go rex dir1 刪除群組 其他人對dir1讀 寫 執行許可權 chown user1 file1 更改file1的所有者為user1 chown r u...