编写一个安装脚本,仅当目录 1 天内未被修改时才运行命令

编写一个安装脚本,仅当目录 1 天内未被修改时才运行命令

我有一个 shell 脚本,它使用来自 Subversion 存储库的文件执行一些任务。我希望 Subversion 存储库保持最新,但现在该脚本svn up每次都会运行,如果我需要连续运行该脚本几次,那就很烦人了。

由于svn up改变了目录的最后修改时间戳.svn(即使没有新的提交),我认为我可以使用它来确保它svn up每天只运行一次左右。

我试图找到一种简单的方法来检查.svn目录是否超过一天,但是有很多看似过度的方法可以做到这一点,所以我想我会在这里问一下,以防真的有一种非常简单的方法可以做到这一点。

答案1

这有点简单:

[ `find /path/to/.svn -maxdepth 0 -mtime +1 | wc -l` -gt 1 ] && svn up

答案2

也许我忽略了这里的大局,但是你不能只运行每天一次的 cron 作业来更新 svn 存储库吗?

例如

crontab -e

然后添加

4 * * * /root/updatecron.sh

其中 updatecron.sh 包含

#!/bin/bash
cd /my/directory
/usr/bin/svn up

或类似的东西?

相关内容