Подтвердить что ты не робот

Как запустить Mintty и запустить файл script?

Я написал простой CURL и поместил его в файл script.

если я сначала запустил mintty, а затем "test.sh" он запускает script в файле просто отлично. Прекрасно работает.

однако, если я попытаюсь запустить mintty с любой из следующих команд командной строки, он не будет запущен. Я запускаю их в CMD

C:\>c:\cygwin\bin\mintty.exe --exec '/cygdrive/c/cygwin/bin/test.sh'

C:\>c:\cygwin\bin\mintty.exe --exec '/bin/test.sh'

C:\>c:\cygwin\bin\mintty.exe --exec '/test.sh'

C:\>c:\cygwin\bin\mintty.exe --exec 'test.sh'

C:\>c:\cygwin\bin\mintty.exe --exec 'c:/test.sh'

C:\>c:\cygwin\bin\mintty.exe --exec 'c:\test.sh'
4b9b3361

Ответ 1

Для тех, кто заинтересован в этом... вот решение

Создайте ярлык в окнах для mintty со следующей целью

Предполагая, что ваш файл оболочки находится в каталоге c:\cygwin\bin

C:\cygwin\bin\mintty.exe /bin/bash -l -e '/cygdrive/c/cygwin/bin/test.sh'

Ответ 2

Попробуйте запустить bash.exe напрямую (или другую оболочку, установленную с cygwin).

Из оболочки Windows измените каталог на вашу cygwin install и запустите это:

C:\cygwin\bin>bash.exe /cygdrive/c/cygwin/bin/test.sh

Чтобы запустить оболочку script, дважды щелкнув ярлык

1) Поместите команду в файл .bat

test.bat
---------------------------------------------------------------------
c:\cygwin\bin\bash.exe /cygdrive/c/cygwin/bin/test.sh

---------------------------------------------------------------------

2) Создайте ярлык, используя test.bat в качестве цели.

Я попытался сделать ярлык с bash.exe и командой в качестве цели. Из-за каких-то ошибок. Однако обертывание команды в файле .bat работает. Наведите указатель мыши.

Ответ 3

Я также использую решение, предлагаемое nkman, но я добавляю параметр "-h always", чтобы консоль оставалась открытой до тех пор, пока я не нажму "enter", чтобы узнать, что произошло. Итак, это цель моего ярлыка:

C:\cygwin\bin\mintty.exe -h always /bin/bash -l -e '/cygdrive/c/cygwin/home/Administrator/startup.sh'

Ответ 4

Лучшее решение на мой взгляд:

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

  • Создать ярлык на mintty.exe на рабочем столе, например

  • Изменить свойства ярлыка и изменить цель (сохранить путь):

  • C:\Program Files\Git\usr\bin\mintty.exe" -h always /bin/bash -l -e 'D:\folder\script.sh'