使用 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 中國”官方小程式來檢視
相關文章
- 檔案拆分命令 split 使用簡介
- Linux基礎命令—splitLinux
- Linux基礎命令---splitLinux
- 『學了就忘』Linux檔案系統管理 — 61、使用parted命令進行分割槽Linux
- 命令列技巧:分割檔案內容命令列
- Linux檔案操作高頻使用命令Linux
- 『學了就忘』Linux檔案系統管理 — 59、使用fdisk命令進行手工分割槽Linux
- Linux刪除檔案命令Linux
- Linux常用檔案操作命令Linux
- 在 Linux 中使用ImageMagick命令列操作影像檔案Linux命令列
- 使用 7-Zip 進行檔案分割與合併(命令列示例)命令列
- Linux常見命令-目錄檔案命令Linux
- Linux常用命令:檔案操作命令Linux
- linux每日命令(30):Linux 使用者及使用者組相關檔案、命令詳解Linux
- Linux檔案管理相關命令Linux
- linux常用檔案命令(自家用)Linux
- linux 查詢檔案命令 findLinux
- 在 Linux 命令列中使用 ls 列出檔案的技巧Linux命令列
- 在Linux中,如何使用logrotate命令管理日誌檔案?Linuxlogrotate
- 如何在 Linux 中分割和重組檔案!Linux
- Linux 磁碟分割槽及檔案系統管理Linux
- Linux分割槽之parted命令Linux
- linux每日命令(25):Linux檔案型別與副檔名Linux型別
- 每天一個Linux命令-使用du檢視檔案大小Linux
- Linux基礎命令---lp列印檔案Linux
- Linux基礎命令---lpr列印檔案Linux
- linux檔案與目錄管理命令Linux
- linux檔案壓縮和解壓命令Linux
- linux中用touch命令建立新檔案Linux
- Linux檔案許可權管理命令Linux
- Linux常用的文字檔案操作命令Linux
- Linux 檢視系統檔案命令Linux
- Linux磁碟分割槽、掛載、檢視檔案大小Linux
- 在linux系統中對檔案進行分割Linux
- 在 Windows 系統中,可以使用內建的命令列工具來分割和合並大檔案,雖然沒有專門的 split 命令(類似於 Linux 中的 split 命令),但可以透過一些其他方式實現這一功能。以下是一些常用方法:Windows命令列Linux
- Linux 命令列刪除指定副檔名檔案Linux命令列
- JavaScript split() 分割字串生成陣列JavaScript字串陣列
- split 分割槽的簡單研究