2013-04-12 34 views
11

Tôi đã viết một CURL đơn giản và đặt nó vào một tập lệnh.Làm thế nào để tôi khởi động Mintty và chạy một tập lệnh?

nếu trước tiên tôi chạy mintty và sau đó "test.sh" nó chạy tập lệnh trong tệp tốt. Hoạt động hoàn hảo. Tuy nhiên,

tuy nhiên, nếu tôi cố gắng chạy mintty với bất kỳ dòng lệnh nào sau đây, dòng lệnh sẽ không chạy. Tôi đang chạy này trong 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 trong/bash -l dòng trên hoạt động tốt, nhưng với "-e '/cygdrive/c/cygwin/bin/test.sh'" consolewindow mở trong 1 giây, sau đó nó sẽ đóng lại. – layornos

Trả lời

7

Đối với bất cứ ai quan tâm đến việc này ... đây là giải pháp

Tạo một phím tắt trong windows cho mintty với mục tiêu sau

Giả sử tập tin shell của bạn nằm trong c: \ cygwin \ bin

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

Tôi tìm thấy 'mintty.exe' và' bash.exe' trong 'C: \ cygwin64 \ bin \' – hobs

3

Thử chạy bash.exe trực tiếp (hoặc một số trình bao khác được cài đặt bằng Cygwin).

Từ một vỏ cửa sổ, thay đổi thư mục để Cygwin của bạn cài đặt và chạy này:

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

Để có được kịch bản shell để chạy bằng cách nhấp đúp một shortcut

1) Đặt lệnh trong một. bat file

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

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

2) Tạo phím tắt bằng test.bat làm mục tiêu.

Tôi đã thử tạo lối tắt bằng bash.exe và lệnh làm mục tiêu. Đó là lỗi cho một số lý do. Tuy nhiên, gói lệnh trong một tập tin .bat hoạt động. Đi con số.

0

Tôi cũng sử dụng giải pháp do nkman cung cấp, nhưng tôi thêm tùy chọn '-h always' để bàn điều khiển vẫn mở cho đến khi tôi nhấn enter, để xem điều gì đã xảy ra. Vì vậy, đây là mục tiêu của shortcut của tôi:

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

giải pháp tốt nhất theo ý kiến ​​của tôi:

gọi các vỏ phải, không có cửa sổ không cần thiết và gọi một kịch bản bash sau đó sẽ được tổ chức.

  • Tạo một Shortcut-mintty.exe trên desktop của bạn, ví dụ

  • Chỉnh sửa thuộc tính của các phím tắt và thay đổi mục tiêu (giữ cho đường dẫn):

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

Các vấn đề liên quan