2013-07-01 64 views
2

我想加載我的Cygwin shell進入bash,但立即加載時我希望它改變到一個特定的目錄。這樣做的原因是,我可以在第一次加載cygwin時運行多個批處理以進入特定目錄,而不必在每次加載時鍵入cd。我有多個地方想加載,所以你可能會看到爲什麼有多個批處理文件是有用的。Cygwin加載後的批處理命令到Cygwin

到目前爲止,我有這在我的demo_app.bat文件...

@echo off 
start mintty -i /Cygwin-Terminal.ico - 
"cd /cygdrive/c/cygwin/home/Alex/rails_projects/demo_app/" 

但一個cygwin窗口只彈出到我的主目錄。

回答

0

我終於找到了我正在尋找的解決方案。

這讓我寫在我的工具欄多個批處理文件,我只需按一下,然後直接進入該碰巧包括,在特定的目錄,而在我的個人資料的bash ...

start mintty /bin/env CHERE_INVOKING=1 /bin/bash --login -i -c 'cd /cygdrive/c/cygwin/home/Alex/rails_projects/demo_app/; exec bash' 

謝謝所有的建議。

+0

同樣,如果我想要去另一個目錄,我只是寫一個單獨的腳本,允許它在那裏開始......我只是改變'CD/cygdrive ...'部分 – harmonickey

1

假設你正在使用bash,添加以下行到您${HOME}/.bashrc會達到預期的效果:

cd /cygdrive/c/cygwin/home/Alex/rails_projects/demo_app/ 
+0

但我將有多個批處理文件去不同的目錄,所以我不想只有一個靜態的地方,我的bash開始到 – harmonickey

2

試試這個:

命令名稱是cd不得用雙引號。
詳情請看anishsane's張貼:)

+0

除非mintty退出,它不會執行進一步的命令。此解決方案不起作用。 – anishsane

+0

錯誤..這也不起作用。批量不知道'/ cygdrive/c'。 – anishsane

+0

@anishsane好的,我放棄:)做了一個編輯.... – Endoro

2

嘗試:

@echo off 
cd C:\cygwin\home\Alex\rails_projects\demo_app 
start mintty -i /Cygwin-Terminal.ico 

注意:這將在正確的目錄你的shell啓動,但它不會加載默認的環境。

注意:mintty命令行結束時缺少-