Adr*_*der 12 linux sync inotify macos
我正在寻找一个 CLI 工具,它可以观察一个目录并吐出实时更改的文件名。
some_watch_command /path/to/some/folder | xargs some_callback
Run Code Online (Sandbox Code Playgroud)
我知道inotify( inotify-tools?) 并且它似乎是我需要的,但我需要同时兼容 Linux(在我的情况下为 Ubuntu)和 OSX 的东西。
它不需要闪电般快速,但它确实需要在变化时触发(在一秒钟内是合理的)。另外,我不一定需要上面提到的确切 CLI 程序。如果存在一些底层技术并且可以在两个平台上轻松编写脚本,那也很棒。
slh*_*hck 12
OS X 通常会使用文件夹操作或Launchd来执行此任务。
我知道的唯一跨平台工具是Python的看门狗 API(因此可用于 OS X 和 Linux)。通过pip(或easy_install)安装它
pip install watchdog
Run Code Online (Sandbox Code Playgroud)
它带有watchmedo命令行工具,允许您在系统事件上运行 shell 命令。检查其一般语法watchmedo --help
这是一个简短的示例,您可以在其中轻松修改以粗体突出显示的命令和路径:
watchmedo shell-命令 \
--递归\
--command=' echo "${watch_src_path}" ' \
/some/folder
这将简单地吐出所有更改的文件或文件夹的路径,允许您将watchmedo的输出通过管道传输到另一个 shell 命令。
| 归档时间: |
|
| 查看次数: |
7205 次 |
| 最近记录: |