Bash 出力をファイルにリダイレクトする

Naila Saad Siddiqui 2023年1月30日 2022年8月18日
  1. Bash でファイルへの出力をリダイレクトするには >>> 演算子を使用する
  2. Bash で tee コマンドを使って出力をファイルにリダイレクトする
Bash 出力をファイルにリダイレクトする

この小さな記事は、コマンドの出力を標準のコンソールではなくファイルにリダイレクトするための Bash スクリプトのメソッドに関するものです。

このリダイレクトを実現するには、いくつかの方法があります。ここでは、それらのいくつかについて説明します。

Bash でファイルへの出力をリダイレクトするには >>> 演算子を使用する

2つのリダイレクト演算子 >>> は、コマンドの出力を stdout またはコンソールではなく、指定されたファイルにリダイレクトします。

  1. > 演算子を使用して、出力がファイルに挿入され、前のすべてのファイルの内容が置き換えられます。
  2. >> 演算子を使用すると、出力がファイルの最後に追加され、前のコンテンツがそのまま保持されます。

このコマンドを使用する前に、ファイルを明示的に作成する必要はないことに注意してください。正しいパスを指定する必要があります。ファイルが存在しない場合、Bash は新しいファイルを作成します。

このコマンドの構文は次のとおりです。

[command] > /path/to/your/file

以下の例を見てみましょう。

リダイレクション演算子の出力

上の図から、最初のコマンドを実行した後、画面に出力が表示されなかったことがわかりますが、すべての出力はファイルに配置され、次のコマンドで表示されます。

>> 演算子の動作を見ていきます。

»演算子の働き

画像を見ると、uname コマンドの出力がファイルの最後に追加されていることがわかります。

Bash で tee コマンドを使って出力をファイルにリダイレクトする

tee コマンドは、出力をファイルにリダイレクトするためにも使用されます。違いは、出力をファイルに送信するだけでなく、画面にも表示することです。

このコマンドを使用する前に、ファイルを明示的に作成する必要はないことに注意してください。正しいパスを指定する必要があります。ファイルが存在しない場合、Bash は新しいファイルを作成します。

このコマンドの構文は次のとおりです。

[command] | tee /path/to/your/file

以下の例を見てみましょう。

ティーコマンド

このコマンドは、すべてのファイルの内容をこの新しい内容に置き換えます。以前のコンテンツを保持してファイルを追加する場合は、次のような -a オプションを指定してこのコマンドを使用できます。

tee コマンド-オプション

したがって、出力をファイルにリダイレクトする方法はたくさんあることがわかります。

ここではそれらのいくつかについて説明しました。他にもいくつかあります。

関連記事 - Bash Output