Такого файла или каталога нет в запущенном файле sh

Такого файла или каталога нет в запущенном файле sh

Возможно, это дубликат, так как уже был похожий вопрос, но я не могу его исправить, поэтому задаю его снова, используя свой код.

У меня shесть такой код:

cd /home/domain.com/data/domain-statistics
git fetch origin
git merge origin/master
git add --all
git add .
git commit -am "File generated and updated on `date`"
git push origin master

когда я запускаю его как:

-bash-4.2$ sh /home/domain.com/data/crons/push.sh

Тогда это всегда будет выглядеть так:

-bash-4.2$ sh /home/domain.com/data/crons/push.sh
/home/domain.com/data/crons/push.sh: line 1: cd: /home/domain.com/data: No such file or directory
fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git

пожалуйста, помогите мне.

решение1

У меня нет репутации, чтобы комментировать, поэтому я пишу это как ответ. Вы пробовали команду cd, используя относительный путь? Если я не ошибаюсь, это будет:

cd ../domain-statistics

решение2

все эти коды работают, если я запускаю их напрямую в терминале

Так что еслиВыне работает втвойтерминал, тогда как этосуществованиебегать?

Если он работает под управлением какой-тодругойпользователь, то этот пользователь вполне можетнетиметь доступ к этому каталогу (или одному или нескольким его родительским каталогам).

Проверьте разрешения для каждого каталога в пути /home/domain.com/data.

Связанный контент