ubuntu分卷壓縮相關命令

打個比方,你需要壓縮aaa這個文件,每個分卷100m,就輸入

tar -cjv aaa | split -b 100m

會生成100m的幾個文件,名爲xaa,xab,xac……
解包就用

cat x* > bbb

這個bbb可以是你指定的任意文件名,然後

tar -xvf bbb

就可以啦

順便告訴大家一個小技巧,符號“|”,就是shift+“\”

下面的方法大家也可以試試

(如何在linux下實現Windows中winrar和winzip等壓縮軟件所提供的打包壓縮分割功能)

將大文件或目錄打包、壓縮並分割成制定大小的文件,這在將數據備份到容量有限的移動儲存設備時是必須的,在Linux下可以通過組合使用 tar,bzip2(或者gzip),split命令來實現。

假設要將下面這個文件壓縮並分割成多個1.4M的文件

-r-xr-xr-x 1 root root 4.4M 2004-08-27 01:50 a.chm
可以用下面的命令:

tar -jcf - a.chm | split -b 1400k - a.chm.tar.bz2.

完成後會生產下面的文件:

-rw-r--r-- 1 root root 1433600 2004-08-27 01:55 a.chm.tar.bz2.aa
-rw-r--r-- 1 root root 1433600 2004-08-27 01:56 a.chm.tar.bz2.ab
-rw-r--r-- 1 root root 1433600 2004-08-27 01:56 a.chm.tar.bz2.ac
-rw-r--r-- 1 root root 225280 2004-08-27 01:56 a.chm.tar.bz2.ad

還原文件用下面的命令:

cat a.chm.tar.bz2.a* | tar -jx

爲了讓廣大菜鳥瞭解上面的命令,現解釋如下:

壓 縮命令"tar -jcf -" 中的 “-jcf" 參數是創建(c)文件(f)並調用bzip2進行壓縮(j),跟在f後面的" -"是將所創建的文件輸出到標準輸出上,在這裏就是通過"|"管道輸出給 split 命令進行文件分割;分割命令"split -b 1400k - a.chm.tar.bz2." 中的 "-b 1400k" 是用來設置每個文件大小的,除了"k",還可以用"m"來作爲單位,接着的" - "就是將"tar"命令通過管道傳入的數據作爲需要分割的數據來源,後面跟着的" a.chm.tar.bz2."就是文件名了。

這兩個命令如果獨立使用,可以將參數中獨立的" - "換爲具體的文件名,這樣"tar"命令就可以將文件打包壓縮成指定的文件,而"split"命令就可以分割指定的文件。

在"tar"命令中,大家也可以用"z"代替"j"參,這樣tar就會調用gzip進行壓縮,而不是bzip2,當然,如果你用了"z"參數,記得將輸出的文件名中的"bz2"改爲"gz",這樣在解壓的時候就可以分辨出需要用那個參數進行解壓。

用split命令生產的文件序列除了字母還可以使用" -d "參數指定爲數字的形式,同時還可以通過" -a x"來設定序列的長度(默認值是2),例如命令:

split -b 1400k -d -a 1 - a.chm.tar.bz2.

就可以產生如下命名規則的文件:

-rw-r--r-- 1 root root 1.4M 2004-08-28 01:01 a.chm.tar.bz2.0
-rw-r--r-- 1 root root 1.4M 2004-08-28 01:02 a.chm.tar.bz2.1
-rw-r--r-- 1 root root 1.4M 2004-08-28 01:02 a.chm.tar.bz2.2
-rw-r--r-- 1 root root 220K 2004-08-28 01:02 a.chm.tar.bz2.3

如果大家想更全面地瞭解這些命令,可以通過 "man 命令" 來查閱他們的手冊。

使用RAR分割 壓縮文件:

rar a -v 1024k xxxx.rar xxxx.file

使用7z分割 壓縮文件:

sudo apt-get install p7zip-full
7z a 22222.mp3.7z 22222.mp3 -v1024k

還原

7z x 22222.mp3.7z.001


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章