命令列生存指南:拆分與合併|Linux 中國

命令列生存指南:拆分與合併|Linux 中國

導讀:

這一節將會介紹 Linux 命令列下的檔案拆分與合併操作。

本文字數:2706,閱讀時長大約:3分鐘

作者:Psiace

作為一個工程師,我們經常與命令列打交道,但除了工作用的命令,你是否嘗試過讓命令來替代你生活中方方面面?

為了讓更多的愛好者可以用命令列作為自己的有效工具,Linux 中國特別邀請了三位作者,撰寫了《命令列生存指南》,希望可以透過這個系列的文章,讓你換一個視角,來看待命令列的存在。如果你想體驗一下不一樣的命令列,那就不妨來看看今天的《命令列生存指南》。

本次的內容為試讀內容,也歡迎你針對今天的內容提出自己的意見和建議。

操作概述

備份檔案時常常涉及到大檔案傳輸的問題,遇到網路質量不佳或者其他問題常常會導致傳輸中斷,而不得不進行重傳。如果採用先將大檔案拆分成多個小檔案進行傳輸、待全部傳輸完成後合併所有檔案的方式,往往可以改善傳輸體驗。

這一節將會介紹 Linux 命令列下的檔案拆分與合併操作。

概念和術語

拆分,顧名思義,就是將一個大的檔案分割成若干個較小的檔案,這些小檔案按次序拼接後可以還原大檔案。通常情況下,根據檔案大小進行拆分是較為常見的方式;但由於文字檔案具有行數特徵,所以除了按大小拆分之外,也可以按行數拆分。

合併,就是將若干個較小的檔案拼接成一個較大檔案。通常只需要按次序連線即可,相對比較簡單。

通常情況下,為確保拆分前和合並後的兩個檔案相同,需要進行驗證。

操作實戰

場景一:使用 split 拆分檔案

split

是 Linux 環境提供的檔案拆分實用程式,同時支援二進位制檔案和文字檔案。通常情況下已經隨 內置於系統中,無需另行安裝。

按大小拆分

二進位制檔案和文字檔案按大小拆分時使用的選項不同:

二進位制檔案使用 選項指定分割後的檔案大小。

文字檔案則使用 選項指定分割後的檔案大小。

二者用法類似,只需要:

以將 (約 2。4 GB)按 100MB 大小進行拆分為例:

可以看到原檔案被拆分成 25 個更小的檔案,從 aa 到 ay:

場景二:使用 cat 合併檔案

cat

是 linux 環境提供的檔案連線實用程式,能夠連線檔案並將其輸出到標準輸出。通常情況下已經隨 內置於系統中,無需另行安裝。

值得注意的是,為了保證合併後的檔案和原始檔案一致,在有條件的情況下,可以用diff命令驗證。

合併拆分後的檔案

使用cat合併檔案可以採用cat [檔案。。。] > [合併後的檔名]的格式,此方法對二進位制檔案和文字檔案均有效。

以之前的 debian-live-aa 到 debian-live-ay 為例,合併時可以使用此命令:

可以看到目錄下會生成合並後的 檔案。

使用 diff 驗證檔案

只需要按diff [原檔案] [現檔案]的格式執行即可。如果沒有輸出,則證明兩個檔案之間沒有差異。

以對比 和 為例:

小練習

嘗試以不同方式拆分系統中的日誌檔案。

TAG: 檔案拆分合併命令列文字檔案