Пакетный скрипт запущен не полностью (но работал ранее) — как увидеть ошибки?

#python #windows #bash #batch-file

#python #Windows #bash #пакетный файл

Вопрос:

У меня есть пакетный скрипт, который довольно прост:

 start "" "%SYSTEMDRIVE%Program Files (x86)Gitbinsh.exe" --login -i -c "cd C:python-script amp;amp; python run.py"
  

Я раньше мало работал с пакетными скриптами, но здесь я могу сказать, что это просто интерактивное открытие git bash, затем запуск команды на CD в каталоге и запуск python run.py

Когда я запускаю this .bat из командной строки, git bash открывается очень ненадолго, а затем сразу же закрывается, но скрипт никогда не запускается.

Я могу каким-либо образом временно остановить этот скрипт, чтобы я мог увидеть любую ошибку, которую может выдавать окно git?

Комментарии:

1. Попробуйте изменить cd C:python-script на cd /D C:python-script

2. добавьте pause в конце выполняемого скрипта, это предложит вам нажать клавишу и позволит вам увидеть результат предыдущей команды.

3. @aschipfl добавление / D не сработало. Также — добавление паузы работает для приостановки терминала CMD, но не приостанавливает работу оболочки Gitbash, которая открыта — она открывается и немедленно закрывается.

4. @GerhardBarnard — да, ко второй части вашего вопроса. Я отправляю команду CD amp; Python для запуска внутри sh оболочки. Я не пробовал с amp;amp; до cd.

5. Да, извините, я неправильно прочитал, поэтому пропустите amp;amp; часть, как упоминалось.

Ответ №1:

Чтобы разрешить отображение паузы в текущем окне, мы можем протестировать, удалив start команду для ее выполнения в локальном окне. Также, как упоминалось в комментариях, если python установлен и он не находит его, вам потребуется указать полный путь к нему, который затем должен работать:

 "%ProgramFiles(x86)%Gitbinsh.exe" --login -i -c "cd C:python-script" "C:python37python.exe" run.py