FSWATCH 是一个跨平台的文件更改监视器,当指定文件或目录的内容被更改或修改时,它会收到通知警报。
它在不同的操作系统上执行四种类型的监视器,例如:
- 基于 Apple OS X 的文件系统事件 API 构建的监视器。
- 一个基于 kqueue 的监视器,FreeBSD 4.1 中的通知接口也支持许多 *BSD 系统,包括 OS X。
- 基于 Solaris 内核及其衍生产品的文件事件通知 API 的监视器。
- 基于 inotify 的监视器,inotify 是一个内核子系统,用于显示对应用程序的文件系统修改。
- 基于 ReadDirectoryChangesW 的监视器,ReadDirectoryChangesW 是记录更改到目录的 Windows API。
- 定期检查文件系统状态的监视器,将文件修改时间保存在内存中,并手动确定文件系统更改(适用于可以使用 stat 的任何地方)。
fswatch的功能
- 支持多个特定于操作系统的 API
- 允许递归目录监视
- 使用包含和排除正则表达式执行路径筛选
- 支持可自定义的记录格式
- 此外,它还支持周期性的空闲事件
如何在 Linux 系统中安装 fswatch
要在 Linux 上安装 fswatch,请对您的特定 Linux 发行版使用以下相应的命令。
sudo apt install fswatch [On Debian, Ubuntu and Mint]
sudo yum install fswatch [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/fswatch [On Gentoo Linux]
sudo apk add fswatch [On Alpine Linux]
sudo pacman -S fswatch [On Arch Linux]
sudo zypp