基本上,问题就在标题中。我想监视目录中写入或删除的新文件,就像我可以使用 监视日志文件一样tail -f
。这可能吗?
答案1
试觀。
取自这里:
watch -d ls -l
我和一个朋友刚刚尝试过这个,似乎突出显示功能不能正常工作,它会突出显示看似随机的选择。我在 RHEL5 机器的 OS X 终端中尝试过这个,我的朋友在 Ubuntu GUI 终端中尝试过。
不幸的是,RHEL5 机器上没有 inotifywait,所以我无法提供有关该命令有效性的任何信息。
答案2
inotifywait
从inotify 工具显示文件修改的实时日志,类似于tail -f
。
inotifywait -m -q -e create,delete,move /dir
-r
可以添加递归监视(对于许多子目录可能会有点慢),--format
以更改输出格式(例如添加时间戳或加入路径和文件名)。
示例输出:
/home/grawity/code/bin/ CREATE,ISDIR fallback
/home/grawity/code/bin/ CREATE gnome-inhibit-list
/home/grawity/code/bin/ CREATE k5translate
/home/grawity/code/bin/ MOVED_FROM logout
/home/grawity/code/bin/ DELETE pacman-sigstats
(顺便说一下,tail -f 也使用 inotify 来跟踪文件变化。)