多年來,我一直在嘗試使用 powershell,但並沒有真正找到一個地方,讓我無法通過一點 python/cygwin/wmic/dos 輕鬆完成這項工作(將最後一個讀作 windows 批處理)。
這可能只是對這些其他工具的熟悉,但我還沒有在任何地方看到它是真正的需要使用powershell。
答案1
看這個帖子SO,這慢慢成為這個問題的規範答案。
答案2
如果您是管理員並且您將在不久的將來管理 Microsoft 伺服器應用程式 - 您將需要學習 powershell。事情就是這樣^^
他們發布的大多數新系統都是使用 powershell 進行管理的,而其上建立的緩慢 UI 通常毫無用處,而且它們都是透過在後台發出 powershell cmdlet 來工作的。正如 RainyRat 已經指出的關於 Exchange 2007 的那樣,將此概念應用到任何即將發布或新發布的 Microsoft 系統中,情況將會變得更加清晰。
但可以肯定的是,對於當今舊系統或現有系統的定期維護腳本來說,它還沒有開始流行。至少在我的書中沒有——主要是因為您經常希望在許多舊系統(如 Windows 2003/XP)中所做的任何事情都得到支持,而不必部署新的“引擎”。當平台升級到 2008+ 和 Win7+ 時,它在這方面也可能變得更加有用。
答案3
用於常規管理工作?不,還沒有 - .BAT 或(暫時)VBScript 仍然可以為我完成這項工作。然而,對於管理 Exchange 2007,它很快就變得不可或缺。 Ex07 中有很多事情你實際上無法用任何其他方式做,因為他們還沒有為它們編寫 GUI 位元。
答案4
我通常使用 VBScript 來執行管理任務。然而,您最終會依賴 COM 伺服器來完成任何困難的事情,其中許多在 Windows 上不是標準的,因此您必須購買(並記住安裝)第三方 COM 伺服器。特別是 x64 會導致問題,因為我所有的 COM 伺服器都是 32 位,所以我最終必須從 \windows\syswow64 運行 x86 版本的 cscript。
我嘗試過使用 C#,但它是編譯的而不是解釋的,因此比較麻煩,並且對於簡單的任務有相當多的(程式設計師)開銷。
我還遠遠沒有掌握 Powershell,但它為我提供了做所有事情的一站式服務。標準命令列開關非常全面,並且當您想要更不尋常的東西時,它與 .Net 整合得很好。
Preet,在您的貼文中提到使用「一點 python/cygwin/wmic/dos」。我也是,但這有四種解決方案,您可以透過學習 Powershell 來替換它們。我可能仍然會在 VBScript 中執行複雜的腳本,但 Powershell 可以完成我需要的大部分操作。
JR