我聽說powershell 2.0 CTP有模塊,但我找不到很多示例代碼或說明。我讀過似乎在網上有什麼小幫助...如何創建PowerShell 2.0模塊?
但我只是不斷收到「術語'添加模塊'不被識別爲cmdlet ...」當我嘗試加載模塊。
任何幫助將感激地收到!
編輯(2010年7月) 請注意,這個問題是基於PowerShell的2.0 CTP,因此是一年半過時了!請參閱Samuel Jack的回答以獲取有關PowerShell 2.0 RTM的幫助。
我聽說powershell 2.0 CTP有模塊,但我找不到很多示例代碼或說明。我讀過似乎在網上有什麼小幫助...如何創建PowerShell 2.0模塊?
但我只是不斷收到「術語'添加模塊'不被識別爲cmdlet ...」當我嘗試加載模塊。
任何幫助將感激地收到!
編輯(2010年7月) 請注意,這個問題是基於PowerShell的2.0 CTP,因此是一年半過時了!請參閱Samuel Jack的回答以獲取有關PowerShell 2.0 RTM的幫助。
在Win7構建中,添加模塊不見了。新的cmdlet是Import-Module。創建模塊的最簡單方法是將PS1文件重命名爲PSM1文件。從那裏你可以做各種各樣的事情,包括模塊清單。
導入模塊也不起作用。實際上,沒有其中包含單詞模塊的命令: gcm | ?{$ _。Name.Contains(「Module」)} | fl名稱 哦,那麼我會等到CTP 3瞭解更多! – 2008-12-17 12:44:14
Windows PowerShell v2.0:TFM(sapienpress.com)在其中一章中提供了信息和示例。它可以作爲電子書,隨着新CTP的發佈而更新。我也在ConcentratedTech.com上對他們進行了博客,並且在論壇中的PowerShellCommunity.org上對他們進行了討論。
模塊將有望解決一些問題。現在,我們可以使用點源獲取函數,變量和腳本到PowerShell會話的全局範圍。
問題是,這可能會污染您的會話與各種全局變量和幫助函數,最終用戶可能不希望/直接需要。
模塊將允許您作爲作者構建腳本,並僅向模塊的最終用戶提供某些功能/變量。
它們也基本上代替了PSSnapin的概念。您可以使用Add-Module Some.dll來添加包含cmdlet的程序集。
什麼是真正的酷是所謂的模塊清單。這是一個散列表,基本上指定了各種依賴以及作者,名稱,GUID標識符和版本號。當用戶加載具有模塊清單的模塊時,它將檢查所有依賴關係並運行模塊作者認爲必要的任何腳本。
CTP3發貨時應該有一些體面的文檔。
希望能有所幫助。
Andy
我不是Powershell專家,但這裏是我剛剛發現的使用PowerShell 2.0 RTM。
假設你想創建一個名爲MyModule的模塊:
Export-ModuleMember -Function * -Alias *
將導出的所有功能和別名Import-Module MyModule
默認情況下,PowerShell是配置爲不從文件中運行任何類型的腳本,所以你需要修改腳本,安全設置。 Set-ExecutionPolicy Unrestricted
會讓你走,如果你不關心需要簽名的腳本。
等待幾個星期,你的願望將實現CTP3。 – halr9000 2008-12-09 04:05:20