我对 bash 还不太熟悉,所以如果我问了一些愚蠢的问题,我很抱歉。长话短说,我正在尝试运行以下 bash 脚本:
#!/bin/sh
ACTION="init" # init or push
USERNAME="username"
PASSWORD="password"
HOST="host.com"
PATH="WebSite/app"
DRYRUN="-D" # use -D for dry-run
cd ./htdocs/app/
git checkout master # switch to master
git push # push to origin
git ftp $ACTION --user $USERNAME --passwd $PASSWORD $DRYRUN ftp://$HOST/$PATH
但当我这样做时,我收到以下错误:
deploy.sh: line 12: git: command not found
deploy.sh: line 13: git: command not found
deploy.sh: line 14: git: command not found
如果我自己直接按照脚本中的步骤操作,它会按预期工作,但通过 bash 运行时则不会。
我认为这可能与 git 不在我的 $PATH 中有关,它看起来像这样:/home/daniel/.rvm/gems/ruby-1.9.3-p286/bin:/home/daniel/.rvm/gems/ruby-1.9.3-p286@global/bin:/home/daniel/.rvm/rubies/ruby-1.9.3-p286/bin:/home/daniel/.rvm/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/home/daniel/.rvm/bin
但如果是这种情况,那么我不确定如何添加它。
有人能帮忙吗?谢谢 :)
答案1
您已在脚本中覆盖了 PATH。请勿覆盖它,只需将“WebSite/app”附加到 PATH 中:
PATH=$PATH:"WebSite/app"
答案2
PATH=$PATH:"WebSite/app"
这应该有帮助
答案3
找出 git 可执行文件的位置,如下所示:
which git
如果
which
返回 ERROR ($? = 1),git
则不在您的 PATH 中找出您安装它的位置。
将脚本中的 git 替换为
path_to_git/git
,或修改 PATH