
我有一個大檔案(例如 8GB)。我怎麼能把它分成多個部分,比如說3個相等的部分,然後我該如何整合它們?
答案1
有幾種方法可以實現這一點。讓我們從基本的開始。
使用分裂和貓命令:
假設我有一張圖像,它太大了(10MB)。我所做的就是:
split --bytes=1M /path/to/image/image.jpg /path/to/image/prefixForNewImagePieces
然後將其放在一起我使用 cat:
cat prefixFiles* > newimage.jpg
例如:
假設在影像所在的資料夾內:
split --bytes=1M myimage.jpg new
如果映像位於名為 images 的目錄中,您也可以執行下列操作:
split --bytes=1M images/myimage.jpg new
如果映像位於目錄 /home/cyrex/images 內,您可以執行下列操作:
split --bytes=1M /home/cyrex/images/myimage.jpg new
(在上述所有情況下,它將分割myimage.jpg
成 1MB 的片段,並在片段名稱前添加單字 new 前綴。因此它們看起來像newaa
, newab
, newac
, newad
...)
如果您要分割一個文字檔案並想按行分割它,你可以這樣做:
split -l 1000 book.txt new
這會將文字檔案拆分為每個 1000 行的輸出檔案。這是另一種分割檔案的方法,主要用於日誌、sql 轉儲、csv 檔案等文字檔案。
然後我將它們合併
cat new* > newimage.jpg
這是一種方法。您甚至可以更改分割塊的大小。只需將--bytes=1M
表示--bytes=1K
1 KB 或 1G的部分更改為千兆,或其他數字,例如--bytes=4K
4KB 的部分。
使用鸚鵡螺
另一種方法是 Nautilus 圖形使用者介面中的壓縮選項。它為您提供了一個選項,可以將要壓縮的一個或多個檔案拆分為較小的兆位元組大小。它簡單又容易。
另一種方法是使用7z
假設您有一個名為的 ISO 映像,ubuntu.iso
您可以執行以下操作:
7z a -v5m -mx0 ubuntu.7z ubuntu.iso
這將從ubuntu.iso
.是-v5m
磁碟區大小,因此您可以將其變更為 10、12、1、3,m 也可以變更為 k(千位元組)等;開關-mx0
告訴 7-Zip 不使用壓縮,即僅將資料分成幾個部分。
提取只需做
7z x ubuntu.7z.001
這樣您就可以提取第一個文件,然後 7z 開始按順序提取以下文件。你也可以做
7z e ubuntu.7z.001
這裡有同樣的效果。
答案2
使用split -b
適當的數量,您可以獲得三塊。
號碼可以是:
size=$(wc -c <"file name")
one_third=$((size/3+1))
若要重新組裝,請使用 cat
cat "file name"* > "file name"
手冊頁將幫助填寫詳細資訊。
答案3
GNOME Split 是一個允許您拆分檔案並將它們合併回來的工具。它是用 Java 編寫的,並使用 GTK+ 使用者介面(感謝 java-gnome 專案)。目標是提供類似專案的本機實現,可以處理多種檔案格式(例如 Xtremsplit)。
http://www.omgubuntu.co.uk/2010/08/split-large-files-easily-in-ubuntu-with-gnome-split/
答案4
用 Java 開發的免費文件分割和合併實用程式。它是一個小尺寸的應用程序,允許用戶將任何類型的檔案分割為更小的尺寸(以 KB、MB 或 GB 為單位)。
它適用於 Linux 和 Windows。
WoodCutter 提供了 3 種合併原始文件的方法。 WoodCutter 建立一個合併文件,WoodCutter 應用程式可以處理該文件以將所有文件重新連接。如果分割文件的接收者沒有安裝 WoodCutter,則也可以獲得原始文件,因為 WoodCutter 也會建立一個批次文件和一個 Shell 腳本文件來將文件合併回去。 Windows平台使用批次文件,Linux平台使用Shell腳本。