約定:
FileName表示檔案名,不能是目錄名
name表示可以是檔案名,也可以是目錄名。
DirName表示目錄名。
溫馨提示:
可以用vim預覽壓縮包裡的東西,例如
vim
防止解壓出一堆散的檔案污染目标檔案夾。
.rar
參考網站中的.rar部分好像有誤
先安裝rar軟體:
sudo apt install rar
解壓
- 解壓到目前目錄:
rar
e: extract的e
- 解壓到指定目錄:
rar
x: extract的x
DirName後面一定要加“/”,例如~/lalala/
建立
rar
DirName後加不加“/”都行
如果要指定目标檔案路徑,可以在FileName指定。如~/backup/sth.rar
.zip
參考網站中的.zip部分好像有誤
解壓
- 解壓到目前目錄:
unzip
- 解壓到指定目錄:
unzip
建立
zip
.tar
參考網站:http://www.linuxdiyf.com/view_154669.html
解壓到目前目錄
tar
x: 解壓檔案(extract裡的x)
v: 列印詳細資訊(verbose)
f: 指定檔案名(file)
解壓到指定目錄
tar
C: 解壓到制定目錄
凡是用tar指令解壓,都可以使用這個選項來指定輸出路徑,如tar.gz和tar.xz。
建立
tar
其中files可以是檔案夾名,也可以是表示檔案的正規表達式(如*.jpg)
c: 壓縮(compress)
尤其要注意,上面的files不要使用絕對路徑如/usr/share/fonts,甚至~/backup也不行(因為”~“會被翻譯成/home/使用者名)。tar加入檔案時會把檔案的相對位置也加進去,解壓出來的檔案都根據它們的相對位置放到解壓到的目錄。是以進行壓縮時要cd到要壓縮的檔案或檔案夾所在目錄。
解壓到目前目錄
gzip
d: 解壓(decompress)
會自動把原來的FileName.gz删除并生成解壓後的檔案。
可加上選項k保留原檔案。
gzip
k: keep
壓縮到目前目錄
gzip
會自動把原檔案删掉并建立FileName.gz。
gzip的常用選項:
k: 保留源檔案(keep)
-
gzip其他常用選項
v: 列印詳細資訊(verbose)
.tar.gz
https://zhidao.baidu.com/question/9844116.html
顧名思義,.tar.gz就是對tar檔案用gzip壓縮得到的檔案。是以解壓可以先解壓gz,再解壓tar,壓縮也可以先壓縮成tar,再壓縮成gz。
也可以使用一條指令完成解壓或壓縮。
解壓
- 解壓到目前目錄
tar
z表示gz
- 解壓到指定目錄
tar
建立
tar
其中files可以是檔案夾名,也可以是表示檔案的正規表達式(如*.jpg)
.xz
xz格式壓縮率極高,但是壓縮和解壓也極慢。
單線程解壓
- 解壓到目前目錄
xz -d FileName.xz
會自動把源檔案删除,然後生成檔案FileName。可以用選項k儲存源檔案
xz -dk FileName.xz
k: keep
- 解壓為指定檔案名
xz -dc FileName.xz >
c: 把壓縮檔案輸出到stdout。不删除源檔案
單線程壓縮
- 壓縮到目前目錄
xz -z FileName
會自動把原檔案删掉,然後生成FileName.xz。可以用選項k儲存原檔案
xz -zk FileName
多線程壓縮
xz -zkT0 FileName
T: 使用多線程,後面跟線程數。如果參數是0,則表示使用[機器核心數]個線程。
這種方法隻能壓縮檔案。多線程壓縮目錄的方法見.tar.xz
.tar.xz
參考網站: https://zhidao.baidu.com/question/1639604825027635340.html
顧名思義,就是把檔案先打包成tar,再壓縮成xz。
解壓時可以先解壓xz得到tar檔案,再解壓tar。
也可以使用一條指令完成解壓或壓縮。
單線程解壓
tar
x: extract
J: xz
單線程壓縮
tar
c: compress
多線程解壓
xz -dcT0 FileName.tar.xz | tar
tar不帶f選項,表示從stdin中讀取。
多線程壓縮
這種方法可以壓縮檔案,也可以壓縮目錄
tar -cf - name | xz -T0 -c >
知識點:
tar如果輸出的檔案名是“-”,則會輸出到stdout
如果xz沒有指定源檔案則會從stdin中讀取
bzip2
壓縮解壓過程都會把源檔案删掉。如果要保留,選項裡加個
k
就好了(keep)。
多線程
用pbzip2。如果不指定線程數,就自動檢測能用多少個線程。
解壓:
pbzip2 -dp線程數 FileName.bz2
生成的檔案是FileName,會自動把FileName.bz2删掉。
壓縮:
pbzip2 -zp線程數 FileName
tar.bz2
單線程
tar
多線程
pbzip2 -cdp線程數 b.tar.bz2 | tar