Windows PowerShell 的設計是為了改善命令列與指令碼執行環境,不僅排除了存在已久的問題還加入了新的功能。

可探索性

Windows Powershell 能讓您輕鬆探索其功能。例如,若要尋找用於檢視和變更 Windows 服務的 cmdlet 清單,請輸入:

get-command *-service

找到用於完成特定工作的 Cmdlet 之後,就可以使用 Get-Help Cmdlet 取得該 Cmdlet 的詳細資訊。例如,若要顯示 Get-Service Cmdlet 的說明,請輸入:

get-help get-service

如需詳細了解該 Cmdlet 的輸出,請將其輸出傳送給 Get-Member Cmdlet。例如,下列命令將顯示 Get-Service Cmdlet 所輸出物件的成員相關資訊。

get-service | get-member

一致性

管理系統可能是一件複雜的差事,因而若有介面一致的工具,必定有助於掌控固有的複雜性。遺憾的是,命令列工具與可編寫指令碼的 COM 物件總是欠缺一致性。

Windows PowerShell 的一致性正是其一大重要資產。例如,只要了解 Sort-Object Cmdlet 的用法,您就能運用相關知識將任何 Cmdlet 的輸出排序。您不需要學會每個 cmdlet 不同的排序常式。

此外,Cmdlet 開發人員也不必特別為 Cmdlet 設計排序功能。Windows PowerShell 賦予提供基本功能的架構,並強制開發人員在介面的諸多層次上務求一致。此架構雖然剝奪了開發人員的若干自主性,換來的卻是更容易開發既穩定又好用的 cmdlet。

互動式與指令碼執行環境

Windows PowerShell 結合了互動式與指令碼執行環境,讓您得以存取命令列工具和 COM 物件,並可使用 .NET Framework 類別庫 (FCL) 的功能。

此環境針對 Windows 命令提示字元加以改進,提供含有多種命令列工具的互動式環境。而 Windows Script Host (WSH) 指令碼亦有所改良,以讓您使用多種命令列工具和 COM Automation 物件,但並未提供互動式環境。

經由統合存取這些功能,Windows PowerShell 不僅增進互動式使用者和指令碼作者的能力,也使得系統管理更容易掌控。

物件導向

雖然您是以輸入命令文字的方式與 Windows PowerShell 互動,Windows PowerShell 係以物件而非文字為基礎。命令的輸出將是物件。您可以將輸出物件傳送給其他命令做為輸入。因此,Windows PowerShell 為曾經接觸過其他殼層的使用者提供熟悉的介面,但還引進了功能強大的命令列新思維。命令之間傳送資料的概念如今已引申為能夠傳送物件,而不再只侷限於文字。

輕鬆轉換成指令碼執行

Windows PowerShell 能讓您輕鬆轉換互動式輸入的命令進而建立與執行指令碼。您可在 Windows PowerShell 命令提示字元輸入命令,以找出執行特定工作的命令。接著,您可將這些命令儲存成轉譯碼或存入歷程記錄,然後再複製到指令檔。




目錄