![在 mac os x 中通过 shell 安排任务](https://linux22.com/image/1277820/%E5%9C%A8%20mac%20os%20x%20%E4%B8%AD%E9%80%9A%E8%BF%87%20shell%20%E5%AE%89%E6%8E%92%E4%BB%BB%E5%8A%A1.png)
我正在编写一些 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
在运行的脚本中进入该目录。
基本上,当您创建要运行的脚本时,请确保:
完整指定所有路径
如果合适,更改目录
设置脚本/命令所需的任何环境变量