ファイル作成を検知するinotify-toolsを試しました
1.概要
ubuntu環境でファイルが作成されたことを検知する仕組みとしてinotify-toolsをネットで見つけて、検証しました。まず、どのようにして検知できるのかをLocalPCで確かめました。この内容を記述します。
2.詳細
inotify-toolsには、inotifywaitとinotifywatchが提供されますが、今回はinotifywaitに着目します
(a) インストール
参考資料に沿って、インストールします。環境はubuntu-20.04.6です。
sudo apt install inotify-tools
(b) ファイル検知設定
ローカルに検知用のディレクトリを作成します
mkdir /home/username/share
検知用shell(test.sh)を作成します
今回はファイルが完了したら検知する設定にしました。
inotifywait -m /home/username/share -e close_write |
while read -r directory action file
do
echo "$directory, $action, $file"
done
検知用shell(test.sh)を実行します
sh test.sh
Setting up watches.
Watches established.
と表示されて止まります。
(c) ファイル検知試験
別のterminalを開いて、shareディレクトリに入ります。
cd /home/username/share
touch abcd
と入力をすると、test.sh実行ターミナルには下記常時出力されます
/home/username/share/, CLOSE_WRITE,CLOSE, abcd
削除してみます
rm abcd
しかし、表示に変化はありません。
directoryを作成してみます
mkdir xyz
しかし、表示に変化はありません。
3.所見
ファイル検知設定には様々な設定ができるので、shell内で組み合せることで色々できそうです。
参考
[外部サイト参照]
inotify-toolsでファイルやディレクトリを監視する
コメント
コメントを投稿