@newaitix

Как отрыть файл из командной строки?

в .bat
"%ProgramFiles%\Git\git-bash.exe" "F:\OSPanel\domains\logreel.com\upload.sh" "*"

В фале upload.sh
git add compile release resource
git commit -m "$1"
git push

Я пытаюсь передать из .bat в .sh параметр.
Но вылазит ошибка.
5ccd8819a7ffe611668975.jpeg

Как побороть эту беду ?
  • Вопрос задан
  • 200 просмотров
Пригласить эксперта
Ответы на вопрос 2
@res2001
Developer, ex-admin
Очевидно ошибка на команде:
git add compile release resource
Судя по тексту - git не может найти compile.
Похоже, все таки надо делать cd, т.к. вы запускаете дополнительную оболочку - git-bash, а у нее каталог по умолчанию, скорее всего, домашний каталог пользователя, а не тот, из которого вы ее запускаете.
Проверить просто - запустите из командной строки вручную git-bash без параметров и посмотрите, какой каталог выдаст команда pwd.
Ответ написан
Комментировать
Lobotomist
@Lobotomist
Software Developer
Так по git status видно, что папки compile и release находятся уровнем выше. Вам нужно либо запускать скрипт из корневой директории, либо указывать пути не относительно корня, а относительно папки запуска. А лучше внутри скрипта переходить в определенную директорию и использовать пути относительно нее.

Третий вариант на мой взгляд самый адекватный, так как иначе легко случайно запустить скрипт не оттуда откуда надо и получить не тот результат.

Получить путь к директории, в которой физически расположен скрипт можно, например, так:
scriptPath="$(readlink -f ${BASH_SOURCE[0]})"
scriptDirPath="$(dirname $scriptPath)"


Кроме того, в git add нужно передавать только реально существующие папки/файлы, иначе ваш скрипт отвалится на первой же команде, как он и делает сейчас. В данном случае я не вижу файла/папки resource, так что даже если вы поправите пути - скрипт не сработает из-за отсутствия resource.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы