Linux csplitコマンド

Linux 命令大全Linuxコマンド大全

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バイトのファイルを削除します。
  • --help オンラインヘルプ。
  • --version バージョン情報を表示します。

例

テキストファイルtestfileを2行目を境界として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行目は1つ目のファイルxx00の文字数です。同様に2行目は2つ目のファイルxx01の文字数です。また、testfileと同じディレクトリに2つのファイルが生成され、ファイル名はそれぞれ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 

Linux 命令大全Linuxコマンド大全

その他の拡張