Linux csplit命令
Linux csplit命令用於分割檔。
將檔依照指定的範本樣式予以切割後,分別保存成名稱為xx00,xx01,xx02...的檔。若給予的檔案名稱為"-",則csplit指令會從標準輸入設備讀取數據。
語法
csplit [-kqsz][-b<輸出格式>][-f<輸出字首字串>] [-n<輸出檔案名位數>][--help][--version][檔][範本樣式...]
參數:
- -b<輸出格式>或--suffix-format=<輸出格式> 預設的輸出格式其檔案名稱為xx00,xx01...等,您可以通過改變<輸出格式>來改變輸出的檔案名。
- -f<輸出字首字串>或--prefix=<輸出字首字串> 預設的輸出字首字串其檔案名為xx00,xx01...等,如果你指定輸出字首字串為"hello",則輸出的檔案名稱會變成hello00,hello01...等。
- -k或--keep-files 保留檔,就算發生錯誤或中斷執行,也不能刪除已經輸出保存的檔。
- -n<輸出檔案名位數>或--digits=<輸出檔案名位數> 預設的輸出檔案名位數其檔案名稱為xx00,xx01...等,如果你指定輸出檔案名位數為"3",則輸出的檔案名稱會變成xx000,xx001...等。
- -q或-s或--quiet或--silent 不顯示指令執行過程。
- -z或--elide-empty-files 刪除長度為0 Byte檔。
- --help 線上幫助。
- --version 顯示版本資訊。
實例
將文本檔testfile以第 2 行為分界點切割成兩份,使用如下命令:
csplit testfile 2
testfile檔中的內容如下:
$ cat testfile #查看testfile 檔內容 hello Linux! Linux is a free Unix-type operating system. This is a Linux testfile! Linux
使用csplit命令,輸出結果如下:
$ csplit testfile 2 13 #xx00檔字元個數 76 #xx01檔字元個數
其中第1 行是第一個檔xx00的字元個數,同樣,第2 行為第二個檔xx01的字元個數。同時,在testfile 的同目錄下將生成兩個檔,檔案名分別為xx00、xx01,xx00 中的內容為:
$ cat xx00 #查看分割後的xx00檔內容 hello Linux! #testfile檔第1行的內容
xx01 中的內容為:
$ cat xx01 #查看分割後的xx01檔內容 Linux is a free Unix-type operating system. #testfile檔第2行以後的內容 This is a Linux testfile! Linux