2013-04-12 2 views
11

Я написал простой CURL и поместил его в файл сценария.Как запустить Mintty и запустить файл сценария?

Если я запустил mintty первым, а затем «test.sh», он отлично выполнил скрипт в файле. Работает отлично.

Однако, если я попытаюсь запустить 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' 
+0

C: \ cygwin \ bin \ mintty.exe/b in/bash -l Строка выше работает отлично, но с «-e» /cygdrive/c/cygwin/bin/test.sh »« консольное окно »открывается в течение 1 секунды, затем оно закрывается. – layornos

ответ

7

Ибо кто заинтересован в этом ... вот решение

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

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

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

Я нашел мои 'mintty.exe' и' bash.exe' в 'C: \ cygwin64 \ bin \' – hobs

3

Попробуйте запустить bash.exe непосредственно (или какой-либо другой оболочки, которые установлены с Cygwin).

Из окна оболочки, изменить каталог для вашего Cygwin установки и запуска этого:

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

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

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

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

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

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

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

0

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

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

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

Запускает правую раковину, никаких ненужных окон и вызывает Баш скрипт впоследствии, который будет удержан.

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

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

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

 Смежные вопросы

  • Нет связанных вопросов^_^