大きなファイルがあり、それを100メガバイトのチャンクに分割する必要がある場合は、
split -b 100m myImage.iso
それは通常私に何かを与えます
xaa
xab
xac
xad
そしてそれらを元に戻すために私は使用しています
cat x* > myImage.iso
ファイルのグループ内のコードの各行を読み取りcat
、出力を新しいファイルにリダイレクトするよりも効率的な方法があるはずです。2つのファイルを開いEOF
て、最初のファイルからマーカーを削除し、それらを接続する方法のように-すべてのコンテンツを確認する必要はありません。
Windows / DOSには、バイナリファイルのコピーコマンドがあります。ヘルプには、このコマンドが複数のファイルを結合できるように設計されていることが記載されています。次の構文で動作します:(/b
バイナリモード用)
copy /b file1 + file2 + file3 outputfile
Linuxでcatよりも大きなファイルを結合するのに似た、またはより良い方法はありますか?
更新
cat
実際には、ファイルを結合する正しい方法であり、最良の方法であると思われます。私がずっと正しいコマンドを使っていたことを知ってうれしい:)フィードバックをありがとう。
cat x*
、あなたは、シェルブレース展開、検討することもできcat xa{a..g}
に指定されたシーケンスを展開するcat
のXaaをXAB XAC XAD XAE XAF XAG
cat x*
か?新しいロケール設定にも影響を与えないsplit
場合ようにsplit
してcat x*
、同じシステム上で使用された、彼らは常に働くだろうか?
split.c
GNU Coreutilsを見ると、サフィックスは文字の固定配列から構成されていますstatic char const *suffix_alphabet = "abcdefghijklmnopqrstuvwxyz";
。サフィックスはロケールの影響を受けません。(しかし、正しいロケールでは小文字が並べ替えられるとは思わない。EBCDICでさえ標準の順序を維持している。)
cat x*
ファイルの順序はロケール設定に依存するため、を使用しないでください。より良いタイピングを開始cat x
プレスよりも、Escキーとその後*
-あなたはファイルの拡張された順に表示されますし、並べ替えることができます。