ホームページ  >  記事  >  システムチュートリアル  >  Linux ファイル操作ガイド: ファイルの分割と再編成に関するヒント

Linux ファイル操作ガイド: ファイルの分割と再編成に関するヒント

王林
王林転載
2024-01-06 16:09:511164ブラウズ
###導入### Linux には、ファイルを分割するためのユーティリティ プログラムがいくつかあります。では、なぜファイルを分割するのでしょうか?使用例の 1 つは、USB スティックなどの小さな記憶媒体に収まるように、大きなファイルを小さなサイズに分割することです。 FAT32 (最大ファイル サイズは 4GB) で行き詰まっていて、ファイルがそれより大きい場合には、USB 経由でファイルを転送するのも良い方法です。別の使用例は、小さなファイルの並列転送が一般に高速であるため、ネットワーク ファイル転送を高速化することです。 csplit、split、cat を使用してファイルをマージする前に再配置する方法を学びます。これらの操作は、テキスト、画像、オーディオ ファイル、ISO イメージ ファイルなど、あらゆる種類のファイルに役立ちます。

csplit を使用してファイルを分割する

csplit は、常にそばにあり、一度使い始めると切り離せなくなる、楽しい小さなコマンドの 1 つです。 csplit は、1 つのファイルを複数のファイルに分割します。この例は、行番号 17 と 33 を分割ポイントとして使用して、ファイル foo.txt を 3 つのファイルに分割する最も単純な使用法を示しています。 リーリー csplit は、現在のディレクトリに 3 つの新しいファイルを作成し、新しいファイルのサイズをバイト単位で出力します。デフォルトでは、各新しいファイルの名前は xx_nn:

です。 リーリー

head コマンドを使用すると、各新しいファイルの最初の 10 行を表示できます。

リーリー

ファイルを同じ行数を含む複数のファイルに分割したい場合はどうすればよいでしょうか?行数を指定し、繰り返しの数を中かっこで囲むことができます。この例では、分割を 4 回繰り返し、残りを最後のファイルにダンプします。 リーリー

アスタリスクのワイルドカード文字を使用して、csplit に分割をできるだけ何度でも繰り返すように指示できます。これはクールに聞こえますが、ファイルを均等に分割できない場合は失敗する可能性があります (LCTT 注釈: csplit の以前のバージョンはこのパラメータをサポートしていません):

リーリー

デフォルトの動作では、エラーが発生すると出力ファイルが削除されます。この問題は、エラー発生時に出力ファイルを削除しない -k オプションを使用して解決できます。もう 1 つの動作は、csplit を実行するたびに、以前に作成されたファイルが上書きされるため、それらを新しいファイル名で個別に保存する必要があることです。 --prefix= _prefix_ を使用して、別のファイル接頭辞を設定します:

リーリー

オプション -n を使用すると、ファイルの番号付けに使用する桁数を変更できます (デフォルトは 2 桁)。 リーリー

csplit の「c」はコンテキストを意味します。つまり、一致するパターンや巧妙な正規表現に基づいてファイルを分割できるということです。以下の例では、ファイルを 2 つの部分に分割します。最初のファイルは「fie」が最初に出現する行で終了し、2 番目のファイルは「fie」が含まれる行で始まります。

リーリー

「fie」が表示されるたびにファイルを分割します:

リーリー

最初の 5 つの「fie」の出現位置でファイルを分割します:

リーリー

コンテンツが「fie」を含む行で始まる場合にのみコピーし、それより前のコンテンツをすべて省略します:

リーリー

ファイルをさまざまなサイズに分割します

split は csplit に似ています。ファイルを特定のサイズに分割するため、大きなファイルを小さなマルチメディア ファイルに分割したり、ネットワーク転送を使用したりする場合に最適です。デフォルトのサイズは 1000 行です:

リーリー

同様のサイズに分割されていますが、ご希望のサイズを指定できます。この例では 20M バイトです: リーリー サイズ単位の略語は、K、M、G、T、P、E、Z、Y (1024 乗)、または KB、MB、GB など (1000 乗) です。

ファイル名の独自のプレフィックスとサフィックスを選択してください:

リーリー

-a オプションは、数値の桁位置を制御します。 --numeric-suffixes は、番号付けの開始値を設定します。デフォルトのプレフィックスは x ですが、ファイル名の後に入力して別のプレフィックスを設定することもできます。

分割ファイルを結合する

ある時点でファイルを再編成する必要があるかもしれません。ここでは一般的に使用される cat コマンドが使用されています:

リーリー

例のアスタリスク ワイルドカードは、SB0 で始まるすべてのファイルと一致しますが、希望する結果が得られない可能性があります。疑問符ワイルドカードを使用すると、文字ごとに 1 つの疑問符を使用して、より正確に一致させることができます: リーリー いつものように、完全なコマンド オプションについては、関連するマニュアルと情報ページを参照してください。

以上がLinux ファイル操作ガイド: ファイルの分割と再編成に関するヒントの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はlinuxprobe.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。