我正在尝试将目录树中所有文件的时间戳增加一小时(以纠正 DST 更改)。经过大量的修补和搜索,我想出了如何使用 find、stat 和 touch 来完成它,但是当我将所有内容放在一个命令中时,它失败了。命令是:
find ~/dir -type f -exec touch -m --date="$(stat -c '%y' '{}') + 3600 sec" '{}' \;
或者使用 args:
find $DIRNAME -type f -print0 | xargs -0 touch -m --date="$(stat -c '%y' '{}') + 3600 sec"
但是它不起作用并返回错误: stat: cannot stat `{}': No such file or directory
我已经在这堵墙上撞了半天了。有什么建议吗?