我正在写一个bash脚本,我想监视文件更改到一个目录(添加,删除和重命名),并相应地执行不同的操作。
有没有办法做到这一点,直接从我的脚本(除了周期性的目录和使diff
)?
你可以使用inotifywait
命令(假设你的发行版支持inotify,大多数情况下):
inotifywait -m -r --format '%f' -e modify -e move -e create -e delete ~/test | while read line do echo "File: $line" done
只是一个想法。 如果您只允许在bash中执行此操作,则可以在目录内容上生成一个md5sum。 可能你可以在那个目录下有文件名,修改时间,inode-modify-time等等。