Windows PowerShell是下一個世代的Shell與腳本(Scripting)環境,由微軟所建立。它的目的是修正既有Windows命令列與腳本方案的缺失。自動化「Windows系統管理」的需求,驅使PowerShell被建立。

過去Windows因為缺乏實用的管理能力,而落後對手,現在則有PowerShell能夠全面性支援.NET,而且它甚至超越系統管理領域,具有開發各種應用的潛力,能夠進行文字處理、產生腳本、建立管理與測試框架等工作。

提升Windows平臺的Shell Script環境

PowerShell整體目標是「提供Microsoft Windows平臺上最佳的Shell腳本環境」。這個敘述有兩部分,而且它們同樣重要,因為PowerShell的目標不只是產生一個好的泛用Shell環境,而且也是一個最適合Windows的環境。

雖然許多概念來自於既有的命令列Shell與腳本語言,但是PowerShell語言和執行環境在設計的一開始,就是以打造最適合現代Windows作業系統的環境為目標。

《Windows PowerShell in Action》作者Bruce Payette是PowerShell團隊成員之一,本書不只談技術細節,更包含整體設計的知識以及設計者的想法。

身為Windows PowerShell團隊的發起成員,作者不但是設計者,也是實作者。他在2001年加入Microsoft,做Interix方面的工作,不久之後就到PowerShell計畫幫忙。在加入Microsoft之前,他在多家公司工作過,包括在Softway(創立Interix的公司)與MKS(建立MKS Toolkit的公司)為Windows建立Unix工具。

利用PowerShell幫助你管理電腦或學習.NET框架

利用這本書,你可以很快地學會Windows PowerShell基本概念,使用它做為互動的命令列Shell,以便寫出簡單、特別的腳本。如果進一步學習,可以用它寫出豐富、細緻的腳本,管理最重要的生產伺服器。學習更深入之後,你就可以運用.NET框架的強大威力。

本書範例相當多,從大到小都有,展示PowerShell語言的特點與環境,並顯示如何快速且有效地將這些特色組成方案。

因為PowerShell的用途多元,本書也具有相同廣度的焦點。它並不是「可以直接套用範例做管理」的Cookbook書籍,只回答一些問題,像是如何處理Active Directory,或如何為Exchange編寫腳本。這本書提供「關於PowerShell執行環境」的資訊,以及如何用「PowerShell之道」建構出解決方案。

讀完本書後,讀者應該能夠拿其他語言(例如C#)寫的範例,讓PowerShell運用這些範例建立解決方案。(本書附錄A討論了PowerShell和其他語言之間的差異。)

不過,這本書沒有涵蓋PowerShell SDK。PowerShell是一個Hostable(可寄宿,也就是說,可以被嵌入到其他應用中)的環境,也是一個可以擴充的環境,本書對此並沒有著墨,而是將焦點放在Shell使用者和腳本員(Scripter)身上。不過,第十一章還是說明了如何從PowerShell腳本中載入.NET組件。

前半部分教導基本觀念,後半部分是實務運用

這本書分成二個部分(Part):「學習PowerShell」與「使用PowerShell」。

第一部分完整地介紹PowerShell語言和環境,提供PowerShell語言的所有面向,包含語法、型別系統……等,並展示範例,顯示每個特色如何作用。因為第一部分的重點放在環境的個別特色上,所以大多數的範例都很小,適合互動進行;第二部分將個別的特色組成較大的範例,將PowerShell使用在特定技術與問題領域,以解決特定問題。

除了第一部和第二部,最後還有附錄。第二部的範例,比例上雖然大許多,但焦點還是在特定技術領域,附錄B的範例特別提供一些常見的系統管理工作的解法,雖然還稱不上是完整的管理食譜(Cookbook),但確實可以展示出PowerShell的能耐與做法。

附錄A提供PowerShell和其他語言的比較(包括cmd.exe、Unix shell、VBScript),有經驗的使用者可以在此找到一些訣竅,這裡也強調「可能會影響到PowerShell」的其他語言的潛在問題。附錄C則展示PowerShell語言的語法,附加「語法註釋」與「Token化規則」,以及一些語法範例。

透過範例邊做邊學,慢慢上手PowerShell

我一直很喜歡Manning出版的In Action系列。這系列的書藉結合介紹、概觀,以及「如何作到」的範例,幫助讀者學習並熟記學過的知識。

如果要讓知識保留下來,必須親身經歷過一番探索、玩樂、且(有趣地)重新敘述你學過的東西,才能了解並認識新的東西。人們有賴從行動(Action)中學習,而In Action系列的風格,就在於採用「範例驅動」學習,鼓勵讀者親手試試新的程式碼,並產生新的想法。

會取《PowerShell in Action》這個書名,我認為有另一個更世俗的理由:讀者很忙,他們希望透過書幫他解決一件事,能夠直接跳到書的某一頁,學習夠用的知識,解決當時手上的問題。也就是說,他們需要一本能以實際行動幫助他們的書。

本書適合Windows系統管理員、開發者,以及對.NET感興趣,或者想對電腦做一些.NET實驗的你。

本書中譯本目前已有出版社取得授權,不久之後即將出版。

 

Windows PowerShell in Action

Bruce Payette/著

Manning出版

售價:44.99美元

Amazon五顆星

 

《作者簡介》

蔡學鏞

清華大學資訊工程碩士,曾任華碩集團軟體工程師、元智大學資訊系講師、美商歐萊禮出版社技術編輯、台灣微軟特約專欄作家,目前擔任軟件公司技術顧問。

 

 

熱門新聞

Advertisement