Linux csplit 命令解釋(附示例)

csplit 是一個 Linux 命令,可用於根據用戶的要求將一個大文件拆分為幾個較小的文件/部分。 這些部分由上下文行確定。 默認情況下,csplit 將文件拆分為每個文件 1000 行,並為用戶提供根據需要更改拆分行數的選項。 輸出拆分文件的名稱類似於“xx00”和“xx01”。 csplit 命令還將每個拆分文件/片段中的字節數作為其自己的輸出或標準輸出輸出。

Csplit 命令語法

csplit 命令的語法是:

csplit [OPTION]… 文件模式…

語法中的 OPTION 是 命令行選項, 用於 將參數傳遞給程序。 在哪裡 文件 是個 用戶想要獲取其絕對路徑的文件名。

命令行選項

Linux 中使用的一些命令行選項如下:

  • -F
  • -k
  • -n
  • -z
  • -s
  • -幫助
  • -版本

使用 csplit 命令 – 示例

在進一步的指南中,我將通過示例解釋和詳細說明 csplit 命令的使用以及每個命令行選項的使用。 對於該過程,您需要執行以下步驟:

步驟 01:創建一個 .txt 文件以使用 csplit 命令對其進行拆分

創建一個名為 ‘演示.txt’ 如下圖所示。 使用機器中的文本編輯器並將其保存在主文件夾中。

用戶還可以使用他/她自己選擇或工作要求的數據創建不同名稱的文件。 他/她還可以將其保存在主文件夾以外的其他位置。 對於這個特定的指南,我使用的是 Demo.txt。

步驟 02:打開 Debian 10 終端

左下角t 並單擊 菜單 按鈕。

前往 搜索欄 在左上角。

類型 終端 那裡。 點擊 “多語言終端”.

點擊多語言終端 將顯示以下顯示。

現在在終端中編寫以下命令來拆分 文件分成兩部分. 由於 第二部分從第 3 行開始,我們將在 csplit 命令中寫入 ‘3’。

 csplit Demo.txt 3

看下圖。

運行命令時,csplit 將為您提供 每個拆分文件中的字節數作為標準數. 要查看 Demo.txt 是否拆分為 2 個文件,請在終端中輸入 ‘ls’ 並回車. 按 Enter 後,它將顯示主文件夾中的所有文件。 在主文件夾中,您可以看到名為“xx00”和“xx01”的 2 個拆分文件。xx00 中的 11 個字節xx01 中的 52 個字節. 所有這些點都在下圖中突出顯示。

現在查看文件 xx00 和 xx01 的內容,在終端中寫入以下命令。

cat xx00 
cat xx01

運行這些命令將為您提供以下輸出。

csplit 命令行選項的使用

選項 01:-f,–前綴

此選項使用 PREFIX 代替拆分文件名中的 ‘xx’。 此命令行選項的語法是:

csplit -f pre Demo.txt 3

在上面的命令中, -f 是命令行選項pre’ 是用來代替 ‘xx’ 的前綴. 用戶可以設置他/她選擇的任何前綴名稱. 對於本特定指南,我將其設置為“pre”。 Demo.txt 是上面步驟 02 中描述的文件名.

通過運行此命令,您將獲得以下輸出,如下圖所示。 這些文件現在被命名為 ‘pre00’ ‘pre01’.

選項 02:-k,–保留文件

這個選項 如果遇到任何錯誤,則不會刪除拆分的輸出文件. 假設以下 example,我正在寫以下內容 命令錯誤 在終端。 csplit –k Demo.txt 4 {3}

由於上述命令有錯誤,但 -k 選項不會刪除拆分文件。 運行 csplit –k Demo.txt 4 {3} 後,我將運行另一個錯誤命令 ls xx*,但輸出仍會顯示拆分文件名。 看下面的圖片。

選項 03:-n,-數字

此選項固定文件名後的位數。 假設,如果您將數字編號固定為 1,則輸出文件名將是 xx0 而不是 xx00。 此命令行選項的語法是:

csplit -n 1 Demo.txt 3

在上面的命令中,-n 是命令行選項。 用戶可以設置他/她選擇的任何數字。 對於本特定指南,我將其設置為“1”。 Demo.txt 是上面步驟 02 中描述的文件名。

在終端中運行此命令,您將獲得以下突出顯示的輸出。

選項 04:-z,–elide-empty-files

此選項刪除空的輸出文件。 此命令行選項的語法是:

csplit -z Demo.txt 6

在上面的命令中,-z 是命令行選項。 Demo.txt 是上面步驟 02 中描述的文件名。 “由於我給出了將文件分成 5 部分的命令,並且第 5 部分從第 6 行開始,因此將有空文件,因為原始文件只包含8行”。

在終端中運行此命令,您將獲得以下突出顯示的輸出。 它會給 您只有 4 個拆分文件,並刪除了名為 xx05 的第五個空文件。

選項 05:-s、–quiet

  • 這個選項 不顯示輸出文件的大小計數. 此命令行選項的語法是:
csplit -s Demo.txt 3

在上面的命令中, -s 是命令行選項。 Demo.txt 是上面步驟 02 中描述的文件名。

在終端中運行此命令,您將獲得以下突出顯示的輸出。

選項 06:-h,–幫助

這 –-幫助 選項只是顯示 幫助信息並退出. 您將在終端中編寫以下命令:

 csplit --help

下面附加的屏幕截圖顯示了在終端中運行上述命令時的輸出。

選項 07:-v,–版本

-版本 選項只是顯示 csplit 的版本信息 命令。 您將在終端中編寫以下命令:

 csplit --version

以下附件顯示了上述命令在終端中運行時的輸出。

結論

如果您是第一次使用 csplit 命令並且無法理解其用法和實現,本指南將詳細解釋所有內容並引導您完成整個過程。 該文檔不僅通過示例解釋了每個命令行選項及其語法,而且還通過突出顯示的屏幕截圖對整個過程的每個步驟進行了演示。 該文檔不僅對於外行,而且對於專業人士和 IT 用戶都非常易於理解和有效。