サイズに応じてファイルを分割しますが、改行文字で終わっていることを確認してください。

サイズに応じてファイルを分割しますが、改行文字で終わっていることを確認してください。

splitこのコマンドを正常に使用して、大きなファイルを複数の小さなファイルに分割することができました。これは次のコマンドで達成されます。

split -b 1G $temp_path $final_filepath

しかし、注目すべき唯一のことは、これらのファイルに2つのファイルに分割される最後の行が含まれることが多いことです。使用splitや他のコマンドを避ける方法はありますか?

ベストアンサー1

はい、対応するパラメータを使用しないでください-b。 ~から分割(1) マニュアルページ:

-b, --bytes=SIZE 各出力ファイルに SIZE バイトを入れます。

-C, --line-bytes=SIZE 出力ファイルごとに最大 SIZE バイトの行を配置します。

-l, --lines=NUMBER 各出力ファイルに NUMBER 行を配置します。

分割では、-b特定のサイズ(またはKbまたはMB)にファイルを分割するように分割に指示できます。それが行の真ん中であれば、あまりにも悪いです。

分割では、「ライン数」と「フルラインで構成される最大出力ファイルサイズ」がサポートされます。

代わりに、以下を試してください。

split -C 1G $temp_path $final_filepath

この-Cフラグは、すべてのバージョンの分割(特にOS X / Darwin)では使用できません。この場合、gsplit以下をcoreutils使用できます。自分で作ったそしてMacポート

おすすめ記事