質問: 大きなファイルを小さな部分に分割する 大きな+ 4gbファイルを、それぞれ約500mbの小さなファイルに分割する方法を教えてください。そして、どのようにして元のファイルを取得するためにre-assembleそれらを再度実行しますか?
回答: split およびcatを使用できます。たとえば次のようなもの$ split --bytes 500m --numeric-suffixes --suffix-length=3 foo foo. (入力ファイル名はfooで、最後の引数は出力プレフィックスです)。これにより、foo.000 foo.001などのファイルが作成されます...短いオプションを使用した同じコマンド:$ split -b 100k -d -a 3 foo foo 正確なバイト数ではなく、行の境界で分割する場合は、「-line-bytes」を指定することもできます。生成されたピースを再度組み立てるには、次のように使用できます。$ cat foo.* > foo_2 (シェルがシェルグロビングの結果をソートすると仮定します-パーツの数は、システムに依存する引数の制限を超えません)次の方法で結果を比較できます。$ cmp foo foo_2 $ echo $? (0を出力するはずです)あるいは、find/sort/xargsの組み合わせを使用して、ピースを再構成することもできます。$ find -maxdepth 1 -type f -name 'foo.*' | sort | xargs cat > foo_3