2009-06-23 57 views
7

在linux上工作了很長一段時間後,我開始轉向windows。我想獲得一些腳本技能用於Windows中的管理任務。我對bash很滿意,但是當涉及到windows時,bash的「庫/工具」缺少很多。我看到vbscript,wsh,powershell,cmd,jscript等,想知道要學什麼,或者什麼組合。我也在學習.net,所以如果它有幫助,它可能會很好,但它不是必需的。,要學什麼windows腳本語言?

回答

1

VBScript,批處理和Powershell是我能想到的最大的。另外,瞭解WMI如何工作以及如何從VBScript/Powershell中調用它。

12

如果您正在學習.NET,Powershell是唯一的選擇。 VBScript已經存在了很長時間,因此VBScript中可能有更多的示例和示例。但Powershell是微軟專注於未來腳本的地方。它包含在WS2008(R2)中,它將在Win 7中,並且可以添加到Vista或WS2003或WS2008中。 Powershell是戰略性的。我發現它比VBScript更強大。

Powershell周圍的社區也在增加。只是一個例子:如果你去powershell.com,你可以註冊一個電子郵件發送的「一天的PowerShell技巧」。

至於.NET的交集--PowerShell可以加載.NET程序集並調用它們,所以這兩件事情將非常相輔相成。

+0

謝謝,注意。 – Cheeso 2009-06-23 15:18:37

6

Powershell,如果你打算管理2008年的環境或更高版本,那麼毫無疑問。我經常參加微軟的會議,他們把所有的芯片都放進了Powershell。

4

Cygwin可以使您的UNIX腳本編寫技巧與Windows環境保持相關。 Powershell目前似乎是官方的.Net腳本語言。但是,不要打折其他選項。有Ironpython,IronRuby等。許多Java腳本語言(如Groovy)可以通過.Net通過IKVM

5

進行操作。我將繼續介紹PowerShell的建議。 PowerShell團隊的開發人員是舊的Unix手,PowerShell中有許多類似Unix的功能。

像Cygwin的東西會讓你直接使用bash,但我不會推薦它出於幾個原因。首先,如果您處於Windows環境中,那麼對於沒有bash體驗的人員來說,PowerShell會更容易維護。其次,在您可以輕鬆訪問WMI對象等方法的環境中,Windows管理將變得更加容易。PowerShell具有傳統Unix外殼的諸多優點,但PowerShell有一個巨大的優勢:您可以致電方法,而不是在將命令一起輸入時解析文本。每個命令都返回一個對象。請參閱Comparing the Unix and PowerShell pipelines

0

我使用PowerShell很多它是非常簡單和強大的sciping語言,但它不支持Windows 2000!它迫使我在局域網中的每臺計算機上安裝PowerShell運行時。 至於IronRuby,我推薦BOO--非常強大的語言。

2

我自己已經切換到Linux幾年了,但我最近在使用Perl的Windows中完成了一些項目,我不能推薦它足夠。如果你真的要編寫腳本,而不是單個命令,這絕對值得考慮。檢查草莓Perl。你甚至可以找到一個在草莓perl下運行的體面Perl shell,在這種情況下,你也可以將它用於單命令的東西。退房http://perldoc.perl.org/perlfaq3.html#Is-there-a-Perl-shell?

不要認爲Perl不適合腳本化Windows的東西。在我最近的項目中,我使用Win32 :: OLE在Perl中編寫了Outlook和Excel腳本,它的工作方式就像一個魅力!