Linux の CAT コマンドとは何か、およびその使用方法
このcat
コマンドは、ファイルを結合する Linux の最も基本的な方法です。これは conCATenation の略ですが、これには単にファイルをコピーして隣に貼り付けるだけではありません。
CAT コマンドの基本フォーマット
通常、cat
コマンドを使用する方法は次のとおりです。
cat file1 file2 file3 > output
ファイルを隣り合って追加する順序は、コマンド内でファイルを書き込んだ順序に基づきます。この例では、「出力」ファイルを開くと、「file1」の内容の後に「file2」、「file3」というように続きます。
ファイルシステムが出力の最終的なサイズをサポートできる限り、好きなだけファイルを追加できます。
また、すべての Linux ターミナル コマンドと同様に、ファイルを追加するときにファイル拡張子を含める必要があります。たとえば、JSON ファイルを使用していて、これら 2 つを結合する予定がある場合は、次のように入力する必要があります。これ:
cat file1.json file2.json > combined_file.json
出力部を除いたCAT
の場合cat
、出力部分はオプションです。この部分を削除すると、各ファイルの内容が端末に出力されます。
これは単一のファイルに対して行うこともできます。ここでは、テキスト エディターでDOC または TXT ファイルを編集する場合のようにコンテンツを編集できないことに注意してください。このcat
コマンドは、エディターというよりはテキスト ファイル ビューアーに似たものになります。
CATコマンドフラグ
Linux で CAT を使用する場合は常に使用できるフラグが 6 つあります。
-
-n
1 から始まるすべての行を列挙します。 -
-b
文字を含む行のみを列挙します。 -
-s
複数の連続する空行を 1 つの空行に押し込みます。 -
-e
各行の終わりにマークを付けます。 -
-q
CAT が入力ファイルを見つけられない場合、メッセージを表示しません。 -
-t
タブ文字を として表示します^I
。
それぞれの仕組みと使用方法について説明します。
-n フラグの使用
この-n
フラグは、ファイルの内容を 1 行ごとに列挙し、端末に出力します。ファイル自体は編集しません。
cat -n file1.txt
ただし、これを行うことで出力 (列挙型) を保存できます。
cat -n file1.txt > file2.txt
これにより、「file1.txt」の内容が列挙され、「file2.txt」に保存されます。
複数のファイルをまとめて列挙することもできます。このcat
コマンドは、最初のファイルの終了後もカウントを続けます。最初のファイルが 33 で終わる場合、次のファイルは 34 から始まります。
-b フラグの使用
このフラグの問題は、-n
空の行も列挙されることです。レイアウトや読みやすさのためにファイルに十分な空白がある場合は、-b
代わりにフラグが必要になります。
cat -b file1.txt
フラグの形式は、フラグ-b
の形式と同じように機能します-n
。また、これら 2 つを一緒に使用すると、どのように順序付けても-b
フラグがフラグをオーバーライドします。-n
-s フラグの使用
このフラグは、ファイルに十分な空白がある場合に-s
便利なコマンド フラグです。cat
これは、繰り返される空白をすべて 1 つの空白に減らすことで機能し、読みやすくなります。
cat -s file2.txt
このフラグは、マージする前に少なくとも 2 つの連続する空行を探します。ファイルの 2 つの塗りつぶされた行の間に 1 つの空行が含まれている場合、その行をスキップして次の行を検索します。
-e フラグの使用
フラグ-e
は各行の末尾を検出し、$
各行の末尾に を追加します。
cat -e file1.txt
このフラグにより、正規表現または regex を使用するときにテキスト ファイルの操作が容易になります。追加のスクリプトまたはプログラムで保存されたファイルの内容を読み取り、正規表現を使用して末尾をチェックすることができます。
このフラグは各空行の末尾に-e
も を追加するので、見た目をすっきりさせるためにこれを併用するとよいことを覚えておいてください。$
-s
-t フラグの使用
この-t
フラグはフラグに似ています-e
が、代わりに「タブ文字」を検索し、それを に置き換えます^I
。このフラグの優れている点は、「タブ」文字と「ダブルスペース」文字を区別する方法を認識していることです。
cat -t file1.txt > file2.txt
これは、フラグと一緒に-n
またはフラグを使用すると、スペース文字がそのまま読み取られ、そのまま残されることを意味します。「タブ」文字を模倣するために大量のスペースを追加した場合も同様です。-b
-t
Linux CAT コマンドの使用法
このcat
コマンドは、テキスト ファイルを 1 行ずつ結合する場合にのみ使用してください。cat
コマンドが 2 行のテキストを 1 行に結合することを期待しないでください。
一方、他のスクリプトが作業できるようにテキスト ファイルをクリーンアップしようとする場合には、これがよく使われます。、、、およびフラグはすべて、これらのフラグが-e
すでに実行していることについて独自のスクリプトをコーディングする時間を節約するのに十分役立ちます。-t
-b
-s
また、 Nano エディターを常に使用する必要がある場合に比べて、テキスト ファイルを表示するのも簡単になります。
しかし、意図されていないことを実行しようとしている場合は、 Linux 上でファイルを連結する他の方法を検討する時期が来ているかもしれません。
よくある質問
ビデオ ファイルに対して CAT コマンドを使用するとどうなりますか?
動画ファイルには「ヘッダー」と呼ばれるものが含まれています。これは、ビデオがどのようにエンコードされているかを示す情報です。CAT コマンドを使用してビデオを連結すると、エンコードされたビデオ データの間にヘッダー情報が挟まれたものが残ります。ほとんどの閲覧者はこれを読んで、ファイルが破損していると考えるでしょう。ビデオ ファイルでこれを行うには、 FFmpegなどの別のツールを使用することをお勧めします。
異なるフォルダーのファイルに対して Linux CAT コマンドを使用できますか?
コマンドを使用してフォルダー内のファイルを結合するときに、ファイル名をフォルダー パスとして扱うことができますcat
。このようにして、デスクトップのファイルを写真の別のファイルと組み合わせることができますcat Desktop/file1.txt Photos/Photos.txt >> output.txt
。
既存のファイルのファイル名を CAT コマンドへの出力として使用するとどうなりますか?
>
またはを使用しているかどうかに応じて>>
、コンテンツが上書きされるか、既存のファイルに追加されます。この>>
コマンドはファイルに追加するか、ファイルが存在しない場合はファイルを作成します。この>
コマンドは、ファイルが存在する場合は上書きし、存在しない場合は作成します。
推測を避けるために、出力を一意のファイル名を付けて存在しないファイルに保存することが常に最善です。
コメントを残す