ディレクトリ内の変更内容を監視・表示するbashコマンドdtailを公開

ディレクトリ内の変更内容を監視・表示するコマンドdtailを作成した。

dtailinotify-toolsでファイルの変更イベントを監視してtail -fでファイルを監視する。

これを使ってディレクトリを監視すれば、ディレクトリ内に新しく作成されたファイルであったとしてもその内容を監視できることになる。

Usage: dtail [options] [--] path...

Options:
  -r|--recursive
    Watch subdirectories recursively.
  --exclude  <pattern> | --excludei <pattern>
    Exclude files if filename matches <pattern> (POSIX extended regular expression).
    It is case insensitive with --excludei.
  --fromfile <file>
    Read filenames to watch or exclude from a file, one filename per line.
    If filenames begin with @ they are excluded as described above.
  -p|--poolsize <num>
    Maximum number of watching processes. Default 1.

tail含めてinotifyで変更を監視するので監視対象ファイルを周期的にポーリングするような負荷を与えることはない。

監視対象となるファイルが大量の場合、全てのファイルを同時に監視するのは効率が悪いため、同時に監視できるファイル数一定に制限している。