【发布时间】:2011-01-14 21:26:41
【问题描述】:
我有一个每 5 秒重复复制文件的 Bash 脚本。但这有点矫枉过正,因为通常没有变化。
我知道 Linux 命令 watch,但由于此脚本将用于 OS X 计算机(没有 watch,而且我不想让每个人都安装 macports)我需要能够使用直接 Bash 代码检查文件是否被修改。
我应该检查文件修改时间吗?我该怎么做?
编辑:如果检测到更改,我希望扩展我的脚本来做的不仅仅是复制文件。那么有没有一种纯粹的方式来做到这一点?
【问题讨论】:
-
也许您可以改用
rsync?它可以将时间戳和大小与目标文件的时间戳和大小进行比较,如果它们相同,则避免复制。 (不过,如果您要复制到远程机器,仍然会有连接开销。)