Linux ファイルを分割するための split コマンドの詳細な説明

Linux ファイルを分割するための split コマンドの詳細な説明

いくつかの簡単な Linux コマンドを使用すると、ストレージまたは電子メールの添付ファイルのサイズ制限内に収まるように、必要に応じてファイルを分割および再構成できます。

Linux システムには、ファイルを分割するための非常に使いやすいコマンドが用意されています。ファイルのサイズが制限されているストレージ サイトにファイルをアップロードする前、または電子メールにファイルを添付する前に、この操作を実行することをお勧めします。ファイルを複数のファイル チャンクに分割するには、split コマンドを使用します。

$ split bigfile

デフォルトでは、split コマンドは非常に単純な命名スキームを使用します。ファイル チャンクの名前は xaa、xab、xac などになりますが、十分に大きなファイルを分割すると、おそらく xza や xzz という名前のチャンクも生成される可能性があります。

このコマンドは、要求されない限り、フィードバックなしで実行されます。ただし、ファイル チャンクが作成されるときにフィードバックを表示する場合は、--verbose オプションを使用します。

$ split –-verbose ビッグファイル
ファイル 'xaa' を作成しています
ファイル 'xab' を作成しています
ファイル 'xac' を作成しています

ファイルに名前のプレフィックスを付けることもできます。たとえば、元のファイルを分割して bigfile.aa、bigfile.ab などの名前を付けるには、次のように、split コマンドの末尾にプレフィックスを追加します。

$ split –-verbose ビッグファイル ビッグファイル。
ファイル 'bigfile.aa' を作成しています
ファイル 'bigfile.ab' を作成しています
ファイル 'bigfile.ac' を作成しています

上記のコマンドに示されているプレフィックスの末尾にドットが追加されていることに注意してください。そうでない場合、ファイル名は bigfile.aa ではなく bigfileaa のようになります。

分割コマンドは元のファイルを削除せず、単にチャンクを作成するだけであることに注意してください。ファイル ブロック サイズを指定する場合は、-b オプションを使用してコマンドに追加できます。例えば:

$ split -b100M bigfile

ファイルサイズは KB、MB、GB で、最大は YB です。適切な文字 K、M、G、T、P、E、Z、Y を使用するだけです。

バイト数ではなく各ブロックの行数に基づいてファイルを分割する場合は、-l (行) オプションを使用できます。この例では、各ファイルには 1000 行が含まれますが、最後のファイルの行数は少なくなる可能性があります。

$ split --verbose -l1000 ログファイル ログ。
ファイル 'log.aa' を作成しています
ファイル 'log.ab' を作成しています
ファイル 'log.ac' を作成しています
ファイル 'log.ad' を作成しています
ファイル 'log.ae' を作成しています
ファイル 'log.af' を作成しています
ファイル 'log.ag' を作成しています
ファイル 'log.ah' を作成しています
ファイル 'log.ai' を作成しています
ファイル 'log.aj' を作成しています

リモート サイトでファイルを再構成する必要がある場合は、次のように cat コマンドを使用して簡単に実行できます。

$ cat x?? > オリジナル.file
$ cat log.?? > オリジナル.ファイル

上記の分割コマンドと結合コマンドは、バイナリ ファイルとテキスト ファイルの両方に適しています。この例では、zip バイナリ ファイルを 50 KB のチャンクに分割し、cat を使用して再構成し、再構成したファイルを元のファイルと比較しました。 diff コマンドは、ファイルが同一であることを確認します。

$ split --verbose -b50K zip zip.
ファイル 'zip.aa' を作成しています
ファイル 'zip.ab' を作成しています
ファイル 'zip.ac' を作成しています
ファイル 'zip.ad' を作成しています
ファイル 'zip.ae' を作成しています
$ cat zip.a? > zip.new
$ 差分 zip zip.new
$ <== 出力なし = 違いなし

注意したいのは、split を頻繁に使用し、デフォルトの命名を使用すると、以前に分割されたチャンクがあるため、一部のチャンクが他のチャンクを上書きする可能性があるということです。

要約する

上記は、split コマンドを使用して Linux ファイルを分割する方法についての編集者による紹介です。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • Linux で csplit コマンドを使用してファイルを分割する方法
  • Linux で cat を使用して大きなファイルを分割および結合する方法の詳細な説明
  • Linuxのsplitコマンドの詳しい説明
  • Linux の awk における split 関数の使用法の概要

<<:  MySQL でコミットされていないトランザクション情報を見つける方法

>>:  uniapp パッケージ化されたアプレット レーダー チャート コンポーネントの完全なコード

推薦する

ECMAScript のイテレータの詳細な説明

目次序文以前のバージョンイテレータパターンイテレータファクトリ関数イテレータプロトコル最後に序文多く...

Vue バインディング オブジェクト、配列データを動的にレンダリングできないケースの詳細な説明

プロジェクトシナリオ: Dark Horse Vueプロジェクト管理の実践、製品分類の取得、拡張バー...

データベースアカウントのパスワード暗号化の詳細な説明と例

データベースアカウントのパスワード暗号化の詳細な説明と例データベースアカウントとパスワードはデータベ...

LeetCode の SQL 実装 (175. 2 つのテーブルの結合)

[LeetCode] 175.2つのテーブルを結合する表: 人物+-------------+--...

MySQLに絵文字表現を挿入する方法

序文今日、オープンソース プロジェクトのフィードバック フォームを設計していたところ、絵文字表現を挿...

Nginx try_files ディレクティブの使用例

Nginx の設定構文は柔軟で、高度に制御可能です。バージョン 0.7 以降では、try_files...

ffmpeg コマンドラインを使用してビデオを変換するためのサンプルコード

この記事の本文を始める前に、まず ffmpeg プログラムをインストールする必要があります (Lin...

MySQLからデータをインポートする際の不正なフォーマット、インポートの遅延、データ損失などの問題を迅速に解決します。

遅い問題を完全に解決したい場合は、MySQL を MySQL 8.0 にアップグレードすることをお勧...

HTML入門チュートリアル HTMLタグ記号をすぐにマスター

補足<br />HTML について何も知らず、HTML の始め方がまだわからない場合は、...

Mysql は最大接続数を表示し、最大接続数を変更します

MySQL 最大接続数の表示と最大接続数の変更1. 最大接続数を確認する '%max_con...

シェルスクリプトを使用して Docker サービスを一括で開始および停止する

目次Dockerを起動するDockerを停止するPython 呼び出しスクリプト最近、日々のテストで...

Linux での tcpdump コマンドの詳細な分析と使用方法

導入簡単に言えば、tcpdump は、ネットワーク上のトラフィックをダンプし、ユーザーの定義に従って...

IE6 で CSS スタイルの div または li の背景のタイリングと境界の破損を解決する方法

IE6 で CSS スタイルの div または li の背景のタイリングや境界の破壊を解決するには、...

Vue の img の src 画像アドレスの動的スプライシングの問題について

Vue での img の動的スプライシングを見てみましょう。src 画像アドレス、具体的な内容は次の...

JavaScript シングルスレッドと非同期の詳細

目次1. タスクキュー2. 混乱を招く問題を説明する1. setTimeout(f1,0)とは何です...