使用 split 命令分割 Linux 檔案
一些簡單的 Linux 命令能讓你根據需要分割以及重新組合檔案,來適應儲存或電子郵件附件大小的限制。
Linux 系統提供了一個非常易於使用的命令來分割檔案。在將檔案上傳到限制大小的儲存網站或者作為郵件附件之前,你可能需要執行此操作。要將檔案分割為多個檔案塊,只需使用 split
命令。
$ split bigfile
預設情況下,split
命令使用非常簡單的命名方案。檔案塊將被命名為 xaa
、xab
、xac
等,並且,大概地,如果你將足夠大的檔案分割,你甚至可能會得到名為 xza
和 xzz
的塊。
除非你要求,否則該命令將無任何反饋地執行。但是,如果你想在建立檔案塊時看到反饋,可以使用 --verbose
選項。
$ split –-verbose bigfile
creating file 'xaa'
creating file 'xab'
creating file 'xac'
你還可以給檔案命名字首。例如,要將你原始檔案分割並命名為 bigfile.aa
、bigfile.ab
等,你可以將字首新增到 split
命令的末尾,如下所示:
$ split –-verbose bigfile bigfile.
creating file 'bigfile.aa'
creating file 'bigfile.ab'
creating file 'bigfile.ac'
請注意,上述命令中顯示的字首的末尾會新增一個點。否則,檔案將是 bigfileaa
之類的名稱,而不是 bigfile.aa
。
請注意,split
命令不會刪除你的原始檔案,只是建立了檔案塊。如果要指定檔案塊的大小,可以使用 -b
選項將其新增到命令中。例如:
$ split -b100M bigfile
檔案大小可以是 KB、MB,GB,最大可以是 YB!只需使 K、M、G、T、P、E、Z 和 Y 這些合適的字母。
如果要基於每個塊中的行數而不是位元組數來拆分檔案,那麼可以使用 -l
(行)選項。在此示例中,每個檔案將有 1000 行,當然,最後一個檔案可能有較少的行。
$ split --verbose -l1000 logfile log.
creating file 'log.aa'
creating file 'log.ab'
creating file 'log.ac'
creating file 'log.ad'
creating file 'log.ae'
creating file 'log.af'
creating file 'log.ag'
creating file 'log.ah'
creating file 'log.ai'
creating file 'log.aj'
如果你需要在遠端站點上重新組合檔案,那麼可以使用如下所示的 cat
命令輕鬆地完成此操作:
$ cat x?? > original.file
$ cat log.?? > original.file
上面所示的分割和組合命令適合於二進位制和文字檔案。在此示例中,我們將 zip 二進位制檔案分割為 50KB 的塊,之後使用 cat
重新組合了它們,然後比較了組合後的檔案和原始檔案。diff
命令驗證檔案是否相同。
$ split --verbose -b50K zip zip.
creating file 'zip.aa'
creating file 'zip.ab'
creating file 'zip.ac'
creating file 'zip.ad'
creating file 'zip.ae'
$ cat zip.a? > zip.new
$ diff zip zip.new
$ <== 無輸出 = 無差別
我唯一要提醒的一點的是,如果你經常使用 split
並使用預設命名,那麼某些檔案塊可能會覆蓋其他的檔案塊,甚至會比你預期的更多,因為有些是更早之前分割的。
作者:Sandra Henry-Stocker 選題:lujun9972 譯者:geekpi 校對:wxy
訂閱“Linux 中國”官方小程式來檢視
相關文章
- Linux系統下使用split命令分割大檔案.Linux
- linux下使用split 來分割大檔案Linux
- linux split命令引數及用法詳解---linux分割檔案命令Linux
- 檔案拆分命令 split 使用簡介
- Linux檔案分割與合併:split&catLinux
- Linux - 檔案的分割(split)與合併(cat)Linux
- Linux split拆分檔案Linux
- Centos檔案切割利器_split命令及cat命令合併檔案CentOS
- Linux-split命令使用詳解Linux
- 使用split對分割槽表再分割槽
- Linux基礎命令—splitLinux
- Linux基礎命令---splitLinux
- 命令列技巧:分割檔案內容命令列
- 『學了就忘』Linux檔案系統管理 — 61、使用parted命令進行分割槽Linux
- Linux檔案操作高頻使用命令Linux
- php多程式結合Linux利器split命令實現把大檔案分批高效處理PHPLinux
- 『學了就忘』Linux檔案系統管理 — 59、使用fdisk命令進行手工分割槽Linux
- 使用 7-Zip 進行檔案分割與合併(命令列示例)命令列
- Linux分割槽和檔案系統 ⑥Linux
- java split進行字串分割Java字串
- Linux刪除檔案命令Linux
- Linux 檔案搜尋命令Linux
- linux 之建立檔案命令Linux
- Linux常用檔案操作命令Linux
- 在 Linux 中使用ImageMagick命令列操作影像檔案Linux命令列
- 在 Linux 中分割和重組檔案Linux
- linux下檔案分割與合併 (轉)Linux
- linux下檔案分割與合併(轉)Linux
- 超級檔案分割《合併》機(分割大檔案)
- Linux常用命令:檔案操作命令Linux
- Linux常見命令-目錄檔案命令Linux
- linux下fdisk命令的使用方法(分割槽)Linux
- linux每日命令(30):Linux 使用者及使用者組相關檔案、命令詳解Linux
- 在 Linux 命令列中使用 ls 列出檔案的技巧Linux命令列
- JavaScript split() 分割字串生成陣列JavaScript字串陣列
- split 分割槽的簡單研究
- 物料分割評估 Split Valuation for Materials
- Linux檔案管理相關命令Linux