3

Я новичок в 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 но если это так, то я не уверен, как его добавить.

Может кто-нибудь помочь? Спасибо :)

3 ответа3

7

Вы перезаписали свой PATH в своем сценарии. Не перезаписывайте его, просто добавьте «WebSite /app» в ваш PATH:

PATH=$PATH:"WebSite/app"

0

PATH=$PATH:"WebSite/app"
это должно помочь

0
  1. выяснить , где мерзавец исполняемый так: which git

  2. если which возвращает ERROR ($? = 1), тогда git не в вашей PATH

  3. узнайте, где вы его установили.

  4. замените git в вашем скрипте на path_to_git/git или измените PATH

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .