cygwin怎么使用圖文教程:
對于UNIX本身,也有各種稱呼。各種帶字母 “z” 的行話,比如IBM z/OS®和System z9 Virtual Machine (z/VM);嵌套系統(tǒng)開發(fā)人員使用eCos這個詞;在聊天中還會提到其他許多風格的UNIX,比如Linux®、FreeBSD、Sun Solaris和Mac OS X。現(xiàn)代信息技術(shù)使用各種各樣的方言,簡直就像是圣經(jīng)中巴別塔的故事。
當然,也有不少人說Windows術(shù)語,盡管大多數(shù)人只掌握 “指向和單擊” 這樣的簡單詞匯。經(jīng)過20年的發(fā)展,大多數(shù)Windows用戶已經(jīng)忘了古老的DOS術(shù)語。
但是,與UNIX shell相比,Windows COMMAND實用程序的功能實在很差;因此,UNIX用戶通常認為Windows是一種讓人灰心喪氣的平臺。對于習慣于使用豐富的命令行工具集的UNIX軟件開發(fā)人員來說,Windows尤其別扭。對于UNIX開發(fā)人員來說,使用Windows簡直就像是到了陌生的外國。
幸運的是,Cygwin在Windows環(huán)境中提供大家熟悉的一片天地,就像是美國人在法國找到了麥當勞。
Cygwin是一個用于Windows 的類UNIX shell環(huán)境。 它由兩個組件組成:一個UNIX API庫,它模擬UNIX操作系統(tǒng)提供的許多特性;以及Bash shell的改寫版本和許多 UNIX 實用程序,它們提供大家熟悉的UNIX命令行界面。前一個組件是一個Windows動態(tài)鏈接庫 (DLL)。后一個組件是一組基于 Cygwin DLL 的程序,其中許多是用未經(jīng)修改的UNIX源代碼編譯的。它們合在一起提供大家熟悉的 UNIX 環(huán)境。
這篇文章我們要安裝Cygwin,討論它的命令行界面 (CLI),并構(gòu)建標準 Cygwin 發(fā)行版中未包含的開放源碼,以此體會把 UNIX 應(yīng)用程序(至少是一部分 UNIX 應(yīng)用程序)遷移到這個模擬環(huán)境是多么容易。
安裝 Cygwin
與這里介紹的其他軟件不同,Cygwin 使用 Windows 安裝程序。Cygwin setup.exe 文件可以重新安裝軟件,可以添加、修改或升級 Cygwin 配置的組件。
在 Windows 系統(tǒng)上打開瀏覽器,通過訪問 http://cygwin.com/setup.exe 下載 Cygwin 安裝程序。安裝程序本身非常小(大約 600KB),因為大多數(shù) Cygwin 軟件是在安裝過程中下載的。完成下載之后,按照以下步驟安裝 Cygwin:
運行安裝程序。圖 1 顯示 Cygwin 歡迎屏幕。
圖 1. 在安裝 Cygwin 期間出現(xiàn)的第一個對話框
單擊 Next 進入下一個屏幕,選擇要執(zhí)行的安裝類型。
單擊 Install from Internet。
單擊 Next,然后選擇一個安裝目錄。
配置安裝的窗口見圖 2。
圖 2. Cygwin 安裝選項
在大多數(shù)情況下,推薦的安裝選項是合適的,也可以進行定制,但是要注意幾點:
不要在 Windows 系統(tǒng)的根目錄(比如 C:)中安裝 Cygwin。最好把 Cygwin 安裝在它自己的子目錄中,比如默認目錄(C:/cygwin)或 C:/Program Files/cygwin。(您選擇的目標目錄將成為模擬的 UNIX 環(huán)境的根目錄/。例如,如果在 C:/cygwin 中安裝,那么虛擬的 /usr/bin 實際上是 C:/cygwin/usr/bin)。
對于 Install For 選項,不要選擇 Just Me。
把 Default Text File 類型設(shè)置為 Unix,從而盡可能提高與其他 UNIX 機器上存儲的現(xiàn)有文件的兼容性。
5. 單擊Next。
在下一個窗口中,選擇一個存儲 Cygwin 所需的數(shù)據(jù)的目錄。不要選擇前一步中選擇的 Cygwin 目錄。 如果可能的話,應(yīng)該在有至少 1GB 空閑空間的驅(qū)動器上創(chuàng)建或選擇一個目錄。
6. 再次單擊 Next,選擇使用的 Internet 連接類型。通常應(yīng)該選擇 Direct Connection。
7. 再次單擊 Next。
稍等一會兒,Cygwin 會下載當前的鏡像站點列表,讓您選擇一個鏡像站點,見圖 3。如果不確定應(yīng)該選擇哪個站點,就選擇地理位置比較近的站點。
圖 3. 選擇您認為可靠的或地理位置比較近的安裝站點
經(jīng)過短暫的延遲之后,安裝程序顯示可用的類別和包的完整列表。圖 4顯示一個類別的部分內(nèi)容。單擊加號 (+) 展開對應(yīng)的類別;單擊 “循環(huán)” 標志在Skip(忽略此包)和包的所有可用版本之間循環(huán)。
如果Cygwin提供一個實用程序的多個版本,應(yīng)該選擇滿足您的需求的實例。順便說一下,如果選擇 B 列,就會下載二進制包;選擇 S,也會下載源代碼。
圖 4. 選擇最適合需要的包和實例
在 Cygwin 中可用的包超過 1,000 個,所以應(yīng)該只選擇您需要的類別和包。(安裝所有 Cygwin 包會占用超過 800MB 的磁盤空間)。以后隨時可以添加整個類別或單獨的包:只需重新運行 Cygwin 安裝程序。(還可以在任何時候用相同的安裝程序刪除或更新包)。搜索 Cygwin 包列表(參見 參考資料),檢查您喜歡的 UNIX 實用程序是否在 Cygwin 中可用。
8. 選擇您需要的工具之后,單擊 Next,下載過程開始!
進度條分別反映每個包的下載進度、總下載進度和磁盤使用量。圖 5 是在我的測試計算機上在安裝期間截取的屏幕圖。
圖 5. Cygwin 下載大量軟件,所以請耐心等待
最后,安裝程序安裝軟件并(可選地)在 Start 菜單和桌面中添加快捷方式。單擊 Finish
9. 通過使用 Start 菜單或雙擊 Cygwin 圖標(如果添加了這些快捷方式的話),啟動 Cygwin;也可以執(zhí)行 Cygwin 目錄中的 Cygwin 腳本(比如 C:/cygwin/Cygwin.bat)。
圖 6 顯示第一次啟動 Cygwin 時的情況:它創(chuàng)建您的主目錄,執(zhí)行 shell 啟動文件,顯示提示。現(xiàn)在可以運行 UNIX 命令了!
圖 6. 現(xiàn)在可以在 Windows 中使用 UNIX 命令了!
例如,試一下 ls -a或 type touch。后一個命令表明 touch是可執(zhí)行文件 /usr/bin/touch。
在 Windows 中發(fā)揮 UNIX 的優(yōu)勢(反之亦然)
Cygwin 在 Windows 中幾乎完整地模擬一個 UNIX shell。實際上,它把這兩種操作系統(tǒng)很好地結(jié)合在一起了。例如,可以運行 df -h命令顯示 “UNIX” 機器上的空閑磁盤空間。圖 7 顯示結(jié)果。
圖 7. 是 Windows 上的 UNIX 文件系統(tǒng),還是 UNIX 上的 Windows 文件系統(tǒng)?
正如前面提到的,Cygwin 安裝目錄作為虛擬 UNIX 系統(tǒng)的根目錄。Cygwin 把安裝目錄中的子目錄映射到 UNIX 目錄。它以單獨的卷的形式提供 Windows 驅(qū)動器,比如 /cygwin/c。可以使用這樣的虛擬路徑啟動 Windows 程序。請嘗試輸入
/cygwin/c/Program/ Files/Internet/ Explorer/IEXPLORE.EXE
從命令行啟動 Windows Internet Explorer®。(還可以使用 Tab 鍵自動展開路徑的元素)。
順便說一句,如果要把 Windows 路徑名轉(zhuǎn)換為等效的 UNIX 路徑名或者相反,可以試試內(nèi)置命令
cygpath。在默認情況下,cygpath產(chǎn)生 UNIX 路徑名。使用-w選項產(chǎn)生 Windows 路徑。
$ cygpath -w /cygwin/c/Program/ Files/Internet/ Explorer/IEXPLORE.EXE c:/Program Files/Internet Explorer/IEXPLORE.EXE
還有幫助溝通這兩個環(huán)境的其他特性:
Cygwin 提供它自己的 lpr(/usr/bin/lpr 而不是 Windows 的 LPR.EXE),可以直接從模擬的 UNIX 環(huán)境進行打印。只需把 PRINTER 環(huán)境變量設(shè)置為 //server/printer_name 或 //server/printer_name 這樣的 Cygwin UNC;前向斜杠和反向斜杠都可以,在 Cygwin 中的其他地方也是如此。
在 Cygwin 中用 ln -s創(chuàng)建的符號鏈接在 Windows 中被解釋為快捷方式。同樣,Windows 快捷方式在 Cygwin 中被解釋為符號鏈接。因此,可以使用 Windows 快捷方式帶參數(shù)啟動 UNIX 命令。
因為 Cygwin 提供完整的 Bash shell,所以可以使用上述的所有兼容特性(和其他特性)編寫 UNIX shell 腳本來維護 Windows!
例如,可以使用 UNIX find
在驅(qū)動器上搜索數(shù)據(jù)。請注意一點:在 Windows 文件名中常常使用空格。為了保持完整的文件名(請記住,UNIX 參數(shù)以空格分隔),一定要使用 find -print0和 xargs -0。
見圖 4。展開 Devel 類別,使用循環(huán)控件選擇以下包的最高版本:
autoconf2.1
automake1.10
binutils
gcc-core
gcc4-core
gdb
pcre
pcre-devel
做出選擇之后(為了滿足依賴性,可能會自動選擇其他包),單擊 Next 開始更新。與前面一樣,下載和安裝過程需要一定的時間(開發(fā)包往往相當大)。 參考資料)
結(jié)束語
Cygwin 并不是完美的 UNIX 模擬環(huán)境,但已經(jīng)相當好了。核心組件的文檔很完善,而且特別方便,它們介紹了模擬 DLL 中的限制和安全風險。
Cygwin 最棒的特性可能是它與 Windows 的集成。使用 Cygwin 和它的 UNIX 命令行來操縱系統(tǒng)可以大大提高生產(chǎn)力。建議在您的 shell PATH 變量中包含 Windows 的 Program Files 中的子目錄,這樣只需輸入程序名,就能夠啟動路徑中的任何二進制程序。
更棒的是,Cygwin 可以在同一個窗口中管理多個作業(yè)。按 Control-Z 可以暫停正在運行的作業(yè);輸入 bg和fg分別在后臺和前臺運行作業(yè);輸入jobs管理作業(yè)列表。
當然,Cygwin 還可以對輸入和輸出進行重定向,可以通過管道把一個命令的輸出發(fā)送給另一個命令。
相關(guān)閱讀:
cygwin安裝教程 cygwin安裝使用方法
nginx 0.8.54/1.0.0 在cygwin環(huán)境下的編譯(包括 nginx_mod_h264_streaming-2.2.7)
新聞熱點
疑難解答
圖片精選