大きなファイル (約 10 GB) を、それぞれ 150 MB を超えない複数のファイルに圧縮する方法を探しています。
何かご意見は?
答え1
単一ファイルを圧縮
これにより、ファイル /path/to/your/large/file が圧縮され、現在のディレクトリに、プレフィックス compressed.gz を持つ多数のファイルが作成されます。各ファイルの最大サイズは 150000000 バイトです。
gzip -c /path/to/your/large/file | split -b 150000000 - compressed.gz
単一ファイルを解凍する
上記のコマンドを使用して圧縮されたファイルを解凍して、圧縮されていないファイル「/path/to/decrompressed/file」を生成するには、次のコマンドを使用します。
cat compressed.gz* | zcat > /path/to/decrompressed/file
答え2
分割 [オプション] [入力 [プレフィックス]- ファイルを分割する
INPUT の固定サイズの部分を PREFIXaa、PREFIXab などに出力します。デフォルトのサイズは 1000 行で、デフォルトの PREFIX は 'x' です。INPUT がない場合、または INPUT が - の場合は、標準入力を読み取ります。
SIZE には乗数サフィックスが付く場合があります: 512 の場合は b、1K の場合は k、1 Meg の場合は m。