Bash Wiki
Posts (Latest 30 updated) :
Read all
Contents:
  1. [Linux] Bash inotifywait の使い方: ファイルシステムの変更を監視する
    1. Overview
    2. Usage
    3. Common Options
    4. Common Examples
      1. 1. 単一ファイルの変更を監視する
      2. 2. ディレクトリ内のファイルの作成と削除を監視する
      3. 3. 再帰的にディレクトリを監視する
      4. 4. 特定のイベントをフォーマット付きで表示する
    5. Tips

[Linux] Bash inotifywait の使い方: ファイルシステムの変更を監視する

Overview

inotifywait コマンドは、Linux のファイルシステムの変更を監視するためのツールです。このコマンドを使用すると、特定のディレクトリやファイルに対する変更(作成、削除、変更など)をリアルタイムで監視し、イベントが発生した際に通知を受けることができます。

Usage

基本的な構文は以下の通りです。

inotifywait [options] [arguments]

Common Options

  • -m : 監視を持続的に行い、イベントが発生するたびに通知します。
  • -r : 指定したディレクトリを再帰的に監視します。
  • -e : 監視するイベントの種類を指定します(例: create, delete, modify)。
  • --format : 出力フォーマットを指定します。

Common Examples

以下にいくつかの実用的な例を示します。

1. 単一ファイルの変更を監視する

inotifywait -m /path/to/file.txt

このコマンドは、file.txt の変更を監視し、変更があった場合に通知します。

2. ディレクトリ内のファイルの作成と削除を監視する

inotifywait -m -e create -e delete /path/to/directory

このコマンドは、指定したディレクトリ内でファイルが作成または削除されたときに通知します。

3. 再帰的にディレクトリを監視する

inotifywait -m -r /path/to/directory

このコマンドは、指定したディレクトリとそのサブディレクトリ内のすべての変更を監視します。

4. 特定のイベントをフォーマット付きで表示する

inotifywait -m -e modify --format '%w%f %e' /path/to/directory

このコマンドは、ディレクトリ内のファイルが変更されたときに、ファイル名とイベントをフォーマット付きで表示します。

Tips

  • inotifywait は、スクリプト内で使用することで、特定のアクションを自動化するのに非常に便利です。
  • 大量のファイルを監視する場合、システムリソースに影響を与える可能性があるため、必要なイベントのみを監視するようにしましょう。
  • -m オプションを使用すると、監視を持続的に行うことができ、複数のイベントを連続して処理することができます。