強火で進め

このブログではプログラム関連の記事を中心に書いてます。

Mac でファイルの更新を監視する方法

アプリの動作を探るために、どのファイルに更新が行われているか確認したい時が有ります。
その様な場合に使える Mac 向けのツールを探してみた所、良い感じのアプリは見つかりませんでした。

しかし、代わりに fswatch というコマンドを作成されている方を見つけました。しかもこちらのコマンド、 Mac/Windows/Linux 対応でした。

GitHub - emcrisostomo/fswatch: A cross-platform file change monitor with multiple backends: Apple OS X File System Events, *BSD kqueue, Solaris/Illumos File Events Notification, Linux inotify, Microsoft Windows and a stat()-based backend.
https://github.com/emcrisostomo/fswatch

インストール

インストールは MacPorts か Homebrew にて簡単に出来ます。

MacPorts の場合

port install fswatch

Homebrew の場合

brew install fswatch

使い方

単純に出力したい場合。

fswatch -xr 監視したいフォルダのパス

結果使って何か処理したい場合などはこんな感じで。

fswatch -xr 監視したいフォルダのパス | xargs -I{} echo {}
fswatch -xr 監視したいフォルダのパス | awk '{ print $1 }'

ドキュメント

ドキュメントはこちら(英語)。

fswatch - Documentation
http://emcrisostomo.github.io/fswatch/doc/