例如,如果该目录中的文件已更改,则应更新目录修改日期。基本上,该目录中发生的任何更改都应该触发该目录上的“触摸”。
我可以让系统在执行这些文件操作时自动执行此操作吗?
如果是,是否也可以“触及”父目录,直到根目录?
答案1
答案2
这是一个补充吉尔斯的回答。
要触摸该目录及其所有父目录,请按照以下方式运行某些内容(未经测试):
dir=/path/to/directory
inotifywait -e modify --format '%f' "$dir" |
while read line; do
if [ -n "$line" ]; then
# Handle relative paths.
if [ "$(echo "$line" | cut -c1)" != / ] ; then
path=.
fi
echo "$dir" | tr '/' '\n' |
while read part ; do
touch "$path/$part"
done
fi
done