find:git:在crontab中没有这样的文件或目录通过脚本

时间:2016-12-16 12:24:56

标签: git shell find crontab

我正在尝试创建一个在crontab中运行的脚本,但是当我尝试在crontab守护程序下使用它时,我遇到了命令位置的问题。

已经使用脚本进行了一些测试,似乎工作正常。

就是这样:

# I add this cd because of crontab location
cd ~/Documents/gitrepobackup/    

find . -type d -depth 1 -exec git --git-dir={} --work-tree=$PWD/{} fetch origin \; >> git_backup_update.log 2>&1

这是我在该日志中收到的输出:

find: git: No such file or directory

这也是我在crontab中添加的条目:

* * * * * ~/Documents/gitrepobackup/git_backup_update.sh

任何?

2 个答案:

答案 0 :(得分:0)

您可以在http://man.cx/crontab(5)阅读,PATH环境变量设置为/usr/bin:/bin。如果git不在其中一个位置,则您的脚本将找不到它。如果您想要自己的PATH环境变量集,则可以对其进行配置,或者使用在PATH中找不到的可执行文件的绝对路径。

答案 1 :(得分:0)

还有其他方法可以做到这一点,但由于我只有git的问题,我做了,

which git

发现它的位置,然后在git上添加位置,

find . -type d -depth 1 -exec /usr/local/git/bin/git --git-dir={} --work-tree=$PWD/{} fetch origin \; >> git_backup_update.log 2>&1