Linuxコマンド · 1 min read · Sep 17, 2025

初心者のためのLinux watchコマンドチュートリアル(5つの例)

時々、Linuxコマンドラインで作業していると、出力の変化を追跡するためにコマンドを繰り返し実行したいと思うことがあります。実際、これを可能にするコマンドラインユーティリティが存在することを知って嬉しいでしょう。このツールはWatchであり、このチュートリアルでは、いくつかのわかりやすい例を使ってその基本機能について説明します。

しかし、その前に、この記事で使用されているすべての例はUbuntu 22.04 LTSでテストされていることを述べておく価値があります。

Linux watchコマンド

前述のように、watchユーティリティはコマンドを繰り返し実行することができます。以下はこのコマンドの構文です:

watch [options] command

そして、ツールのmanページは次のように説明しています:

watchはコマンドを繰り返し実行し、その出力とエラーを表示します(最初の画面全体)。これにより、プログラムの出力が時間とともに変化するのを監視できます。デフォルトでは、プログラムは2秒ごとに実行されます。デフォルトでは、watchは中断されるまで実行されます。

以下は、’watch’コマンドがどのように機能するかを理解するのに役立つQ&A形式の例です。

Q1. watchコマンドはどのように機能しますか?

watchコマンドの基本的な使い方は非常に簡単です - ツールをコマンド名を入力として実行するだけです。例えば:

watch date

上記のコマンドは、私のシステムで次の出力を生成しました:

出力の最初の行は、コマンド’date’の出力が2秒ごとに更新されていることを示しており(それがデフォルトの時間間隔です)、その後にシステムの現在の日付/時刻が続きます。2行目は、数秒ごとに更新される’date’コマンドの実際の出力です。

Q2. watchを使って更新間の違いを強調表示するにはどうすればよいですか?

前のセクションで説明したように、追跡されているコマンドの出力は定期的に更新されます(デフォルトでは2秒ごと)。必要に応じて、’watch’が更新間で変化している出力の部分を強調表示するようにすることもできます。

これは、-dコマンドラインオプションを使用して行うことができます。例えば:

watch -d date

そして、watchコマンドが今どのように変更を強調表示するかは次のとおりです:

Q3. 更新間隔をカスタマイズするにはどうすればよいですか?

前述のように、デフォルトの更新間隔は2秒です。ただし、必要に応じて、-nコマンドラインオプションを使用してこの値を変更することができます。このオプションは、新しい間隔の値を入力として渡す必要があります。

例えば:

watch -n 5 date

このコマンドは、出力が5秒ごとに更新されることを保証します。0.1秒未満の間隔は許可されていないことに注意してください。

注意:間隔のギャップが非常に正確に守られるようにするには、-pコマンドラインオプションを使用してください。manページはこのオプションを次のように説明しています:

watchがコマンドを毎間隔秒ごとに実行しようとします。ntptimeで試してみて、分数秒がほぼ同じであることに気付いてください。通常のモードでは、分数秒が継続的に増加します。

Q4. 出力のヘッダーをオフにするにはどうすればよいですか?

必要に応じて、’watch’に表示の上部に間隔、コマンド、および現在の時間を示すヘッダーと、その後の空白行をオフにするように指示することもできます。これは、-tコマンドラインオプションを使用して行うことができます。

例えば:

watch -t date

上記のコマンドによって生成された出力は次のとおりです:

したがって、ヘッダーが完全に削除されたことがわかります。

Q5. 出力が変更されたときにwatchを終了させるにはどうすればよいですか?

出力の変更が検出された後に’watch’コマンドを終了させたい場合は、-gコマンドラインオプションを使用します。

例えば:

watch -g free

したがって、システムのメモリ消費が変更されるたびに、watchコマンドは終了します。

結論

これまでに理解したように、watchはシステムレベル、ディレクトリレベル、またはファイルレベルの変更を追跡するための優れた方法です。このチュートリアルでは、’watch’のいくつかの重要なコマンドラインオプションについて説明しました。これらの練習が終わったら、ツールのmanページに移動してさらに学んでください。より多くのLinuxコマンドが説明されています。例えば、teeコマンド。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。