関数の概要
fs.watchは、Node.jsで提供されるファイルやディレクトリの変更を監視するための関数です。ファイルやディレクトリの変更(追加、削除、変更)があった際に、それを検知してコールバック関数を呼び出すことができます。主にファイルの変更をリアルタイムで監視するために使用されます。
パラメータの説明
パラメータ | 型 | 用途 |
---|---|---|
filename | string | 監視するファイルやディレクトリのパスを指定する |
options | Object | 監視オプションを設定する(persistent: boolean, recursive: boolean, encoding: string) |
listener | Function | 変更があった時に呼び出されるコールバック関数を指定する |
戻り値
fs.watchは特定の戻り値を返さず、非同期で動作します。ファイルやディレクトリの変更を検知するたびにコールバック関数が呼び出されます。
使用例
例1:ファイルの変更を監視してコンソールにログを出力する
const fs = require('fs');
fs.watch('./file.txt', (event, filename) => {
console.log('File changed');
});
例2:ディレクトリの変更を再帰的に監視して特定の処理を行う
const fs = require('fs');
fs.watch('./directory', { recursive: true }, (event, filename) => {
console.log(`${filename} has changed`);
});
関連する関数
fs.watchFile, fs.readdir, fs.readFileなどがfs.watchと一緒に使用されることがあります。
まとめ
fs.watchはファイルやディレクトリの変更を監視するための便利な関数ですが、大量の変更がある場合やリソースを過剰に消費する可能性があるため、適切に使用することが重要です。