在 mac os x 中通过 shell 安排任务

在 mac os x 中通过 shell 安排任务

我正在编写一些 C++ 代码,并希望每 60 分钟将代码“上传”到我的外部 SVN 存储库。为此,我只需执行“svn ci -m“some comment”,但我想自动执行,所以忘掉这个吧。我在 mac os x 上工作,所以我考虑使用 crontab,但遇到了一些错误,我无法让它工作。你知道更好的解决方案吗?

PS 这是我做的。首先“crontab -e”,然后添加以下行

mac:temp john$ crontab -l
# m h  dom mon dow   command
0,5,10,15,20,25,30,35,40,45,50,55 * * * * /Users/john/Desktop/temp/add.sh  

我检查了脚本 add.sh 是否具有执行权限。我并没有收到错误,问题是这个脚本本来应该每 5 分钟运行一次,但根本没有运行。同样的脚本在 Linux 上可以完美运行

答案1

我假设您创建了一个 cron 作业,但在运行时出现错误。让我们知道错误是什么会很有帮助,但人们在使用 cron 作业时遇到的最常见问题是未在命令和文件中指定完整路径,或者未设置任务所需的其他环境变量

在本地登录时运行脚本,您将拥有一组不同的环境路径,而当 cron 执行脚本时,这些路径不一定存在。如果您的脚本需要当前工作目录位于特定位置,请确保您cd在运行的脚本中进入该目录。

基本上,当您创建要运行的脚本时,请确保:

  1. 完整指定所有路径

  2. 如果合适,更改目录

  3. 设置脚本/命令所需的任何环境变量

相关内容