2007年01月11日

開始使用Cygwin以取代cmd.exe

最近嘗試把命令模式由Windows的cmd.exe轉成Cygwin ˈ/sɪgwɪn/。Cygwin是由Cygnus Solutions公司( []天鵝座) 開發,用以將*nix中常用的工具移植到Windows環境。

最主要的原因是:在DOS視窗裡想要處理特定操作時,不知如何著手;Batch太陽春,WSH的VBScript很不熟悉,想要用PowerShell看看,又必須升級到.NET 2.0與Windows 2003 Server SP1,很怕一升級又是一大堆東西出狀況,最後乾脆安裝Cygwin算了。

Cygwin的安裝很簡單,透過它的setup.exe做線上安裝,安裝後很快就能看到Linux的提示符號了。原想有些Windows的環境設定可能還要多花時間,沒想到過程還挺順利的:
  • 在Cygwin裡能直接執行.bat、.com與.exe檔,以前寫的小程式或常用的工具都能繼續使用
  • 系統自動會把Windows裡使用到的磁碟機都掛載好,如 c:d: 或網路磁碟機 x:y: 等,用 cd 就能切換到某部磁碟機
  • bash基本功能都具備,因此可以透過其script來做需要的處理了
另外,修改Home目錄裡的 .bashrc 以設定環境:
設   定說   明
1alias ls='ls -hF --show-control-chars --color=tty --time-style=iso'加入--show-control-chars才能顯示中文
用--time-style=iso把檔案時間格式改成yyyy/mm/dd HH:MM:SS的樣式
2alias cls='clear'設定DOS用的清除螢幕指定
3alias start='explorer'start是cmd.exe的內部指令,因常用 start . 開啟目前目錄,因此設定用檔案總管來替代
4function wd() { "c:/program files/OpenOffice.org 2.1/program/swriter.exe" $*; }還沒找到在Cygwin裡以副檔名直接開啟檔案的方式,先用此方法應急。原本用alias試了很久,但alias無法承接參數,用函數則能正確執行。

$ wd d:/doc/TEST.doc

##

開始使用Cygwin以取代cmd.exe

Posted by emisjerry at 樂多Roodo! │23:12 │作業系統備忘
樂多分類:網路/3C 共同主題:作業系統 工具:編輯本文
Ads by Roodo!