1. 程式人生 > >Windows7下Cygwin加入滑鼠右鍵,開啟當前目錄

Windows7下Cygwin加入滑鼠右鍵,開啟當前目錄

感謝作者無私奉獻:http://herry2013git.blog.163.com/blog/static/2195680112013437139447/

問題產生:
裝好了Cygwin,常常需要鍵入長長的路徑,才能進入當前目錄,非常不方便。
搜尋了相關做法,現在總結如下。
Cygwin安裝好之後,預設安裝是在C:\cygwin。
1. 增加Windows指令碼
在C:\cygwin下,用記事本建立一個文字檔案,儲存並命名為Cygwin.bat。
這個bat檔案其實就是Dos命令組成的指令碼檔案。
鍵入如下程式碼
@echo off
set _T=%CD%
echo %_T
C:
chdir C:\cygwin\bin

@rem bash --login -i
start mintty.exe -e /bin/bash --login -i
程式碼注意:
請注意第四行,和第五行裡面的路徑,如果你安裝Cygwin的時候,路徑選擇了D盤,請做相應的修改。
拷貝注意:
因為網頁的關係,顯示程式碼還是不太完善。拷貝的時候會把一些不該拷貝的字元也拷貝進去,比如空格。這就會造成指令碼執行的不正常。
請注意,一定要把%CD%後面的空格刪除。

-----------------------------------------------------------------------------------------------------------------------
程式碼解釋
1 第一行@echo off
表示關閉回顯
DOS在執行批處理時,
會依次執行批處理中的每條命令,
並且會在顯示器上顯示,
如果你不想讓它們顯示,
可以加一個“echo off”
當然,“echo off”也是命令,
它本身也會顯示,
如果連這條也不顯示,
就在前面加個“@”。
知識點來源http://zhidao.baidu.com/question/21121153.html
2.第二行set _T=%CD%
%CD%表示 本地返回當前目錄字串
我們想滑鼠右鍵開啟當前目錄,就需要得到當前目錄的路徑。
set _T表示設定一個變數,set _T=%CD% 表示把當前目錄的路徑字串給變數_T
很多博文都寫成set _T=%*,%*表示一次返回全部引數的值。這樣就永遠無法在當前目錄下開啟
知識點來源 http://wenku.baidu.com/view/8e28ed94dd88d0d233d46ac6.html
8.第八行start mintty.exe 是開啟位於C:\cygwin\bin目錄下的mintty.exe程式
--------------------------------------------------------------------------------

2. 修改.bash_profile檔案,
該檔案位於C:\cygwin\home\(使用者名稱)目錄下,在.bash_profile檔案最後加入。
export _T=${_T//\\//}
if [ $_T == "" ]; then
export _T=~
fi
cd "$_T"
.bash_profile裡面的內容是Linux Shell指令碼。

指令碼解釋
${_T}表示得到_T的內容
${_T//\\//} 表示把_T內容所有的裡的\換成/----因為windos路徑往往寫為C:\aa\bb,這句話的作用是把C:\aa\bb,變成C:/aa/bb.因為\本身在語法裡的有特別的含義,所以用了雙\,(紅色部分表示猜測,不敢肯定,因為我還沒有系統學過Linux Shell)

語法知識點
${parameter/pattern/string}
${parameter//pattern/string}
在這裡pattern也是一個模式,parameter展開後最長匹配的部分被string替換。第一種情況只替換首次匹配,第二種情況替換所有匹配。

知識點來源 http://www.wuzesheng.com/?p=552uid-11196893-id-363248.html

~表示Cygwin的當前使用者目錄,例如C:\cygwin\home\使用者名稱

3. 修改windows登錄檔 ,達到滑鼠右鍵有個OpenCygwin選單的目的
(修改登錄檔之前需要備份,防止錯誤操作傷害系統。)
3.1 開始->執行(或者win鍵+R),輸入REGEDIT,回車,開啟登錄檔編輯器;
3.2 找到HKEY_CLASSES_ROOT\Directory\Background\shell;
3.3 右鍵點選shell,“新建”->“項”,名字是要顯示在右鍵選單中的,可以隨便寫。這裡寫“OpenCygwin”,回車;
3.4 在剛建立的“OpenCygwin”上點右鍵,新建->項,這回名字不能亂起,寫“command”,回車。右邊視窗會顯示一個名字叫“預設”,型別為“REG_SZ”的鍵值;
3.5 雙擊那個“預設”,能夠修改數值資料,裡面輸入Cygwin的啟動指令碼路徑,比如我們第一步建立好的“C:\cygwin\Cygwin.bat”,把引號去掉,寫好確定。
3.6 現在在資料夾中點開右鍵,你就可以看到多了一個名字叫“OpenCygwin”的選項了。