Update-ModuleManifest

更新模組資訊清單檔案。

Syntax

Update-ModuleManifest
      [-Path] <String>
      [-NestedModules <Object[]>]
      [-Guid <Guid>]
      [-Author <String>]
      [-CompanyName <String>]
      [-Copyright <String>]
      [-RootModule <String>]
      [-ModuleVersion <Version>]
      [-Description <String>]
      [-ProcessorArchitecture <ProcessorArchitecture>]
      [-CompatiblePSEditions <String[]>]
      [-PowerShellVersion <Version>]
      [-ClrVersion <Version>]
      [-DotNetFrameworkVersion <Version>]
      [-PowerShellHostName <String>]
      [-PowerShellHostVersion <Version>]
      [-RequiredModules <Object[]>]
      [-TypesToProcess <String[]>]
      [-FormatsToProcess <String[]>]
      [-ScriptsToProcess <String[]>]
      [-RequiredAssemblies <String[]>]
      [-FileList <String[]>]
      [-ModuleList <Object[]>]
      [-FunctionsToExport <String[]>]
      [-AliasesToExport <String[]>]
      [-VariablesToExport <String[]>]
      [-CmdletsToExport <String[]>]
      [-DscResourcesToExport <String[]>]
      [-PrivateData <Hashtable>]
      [-Tags <String[]>]
      [-ProjectUri <Uri>]
      [-LicenseUri <Uri>]
      [-IconUri <Uri>]
      [-ReleaseNotes <String[]>]
      [-Prerelease <String>]
      [-HelpInfoUri <Uri>]
      [-PassThru]
      [-DefaultCommandPrefix <String>]
      [-ExternalModuleDependencies <String[]>]
      [-PackageManagementProviders <String[]>]
      [-RequireLicenseAcceptance]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Description

Cmdlet 會 Update-ModuleManifest 更新模組資訊清單 (.psd1) 檔案。

這是Microsoft.PowerShell.PSResourceGet中 Cmdlet 的 Proxy Cmdlet Update-PSModuleManifest 。 如需詳細資訊,請參閱 Update-PSModuleManifest

範例

範例 1:更新模組資訊清單

此範例會更新現有的模組資訊清單檔。 Splatting 可用來將參數值傳遞至 Update-ModuleManifest 。 如需詳細資訊,請參閱 about_Splatting

$Params = @{
  Path = "C:\Test\TestManifest.psd1"
  Author = "TestUser1"
  CompanyName = "Contoso Corporation"
  Copyright = "(c) 2019 Contoso Corporation. All rights reserved."
}

Update-ModuleManifest @Params

$Params 是一個 splat,可儲存 PathAuthorCompanyNameCopyright的參數值。 Update-ModuleManifest 會從 @Params 取得參數值,並更新模組資訊清單 TestManifest.psd1

參數

-AliasesToExport

指定模組匯出的別名。 允許使用萬用字元。

使用此參數來限制模組匯出的別名。 AliasesToExport 可以從匯出的別名清單中移除別名,但無法將別名新增至清單中。

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Author

指定模組作者。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ClrVersion

指定模組所需要的 Microsoft .NET Framework Common Language Runtime (CLR) 最低版本。

注意

此設定僅適用于 PowerShell Desktop 版本,例如 Windows PowerShell 5.1,僅適用于低於 4.5 的 .NET Framework 版本。 此需求對較新版本的 PowerShell 或.NET Framework沒有任何作用。

Type:Version
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CmdletsToExport

指定模組匯出的 Cmdlet。 允許使用萬用字元。

使用此參數來限制模組匯出的 Cmdlet。 CmdletsToExport 可以從匯出的 Cmdlet 清單中移除 Cmdlet,但無法將 Cmdlet 新增至清單。

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-CompanyName

指定建立模組的公司或廠商。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CompatiblePSEditions

指定模組的相容 PSEditions 。 如需 PSEdition的相關資訊,請參閱 具有相容 PowerShell 版本的模組

Type:String[]
Accepted values:Desktop, Core
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

在執行 之前 Update-ModuleManifest 提示您進行確認。

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

指定模組的著作權聲明。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultCommandPrefix

指定預設命令前置詞。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Description

指定模組的描述。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DotNetFrameworkVersion

指定模組所需要的 Microsoft .NET Framework 最低版本。

注意

此設定僅適用于 PowerShell Desktop 版本,例如 Windows PowerShell 5.1,僅適用于低於 4.5 的 .NET Framework 版本。 此需求對較新版本的 PowerShell 或.NET Framework沒有任何作用。

Type:Version
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DscResourcesToExport

指定模組匯出Desired State Configuration (DSC) 資源。 允許使用萬用字元。

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ExternalModuleDependencies

指定外部模組相依性的陣列。

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FileList

指定模組中所包含的所有項目。

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FormatsToProcess

指定匯入模組時所執行之格式化檔案 (.ps1xml) 。

當您匯入模組時,PowerShell 會使用指定的檔案執行 Update-FormatData Cmdlet。 由於格式設定檔案的範圍不相同,因此會影響會話中的所有會話狀態。

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FunctionsToExport

指定模組匯出的函式。 允許使用萬用字元。

使用此參數來限制模組匯出的函式。 FunctionsToExport 可以從匯出的別名清單中移除函式,但無法將函式新增至清單。

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Guid

指定模組的唯一識別碼。 GUID 可用來區別具有相同名稱的模組。

Type:Guid
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-HelpInfoUri

指定模組 HelpInfo XML 檔案的網際網路位址。 輸入以HTTP 或 HTTPs開頭的統一資源識別項 (URI) 。

HelpInfo XML檔案支援 PowerShell 3.0 版中引進的可更新說明功能。 其中包含模組可下載說明檔位置的相關資訊,以及每個支援地區設定的最新說明檔版本號碼。

如需可更新說明的相關資訊,請參閱 about_Updatable_Help。 如需 HelpInfo XML 檔案的相關資訊,請參閱 支援可更新的說明

Type:Uri
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IconUri

指定模組圖示的 URL。 指定的圖示會顯示在模組的資源庫網頁上。

Type:Uri
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LicenseUri

指定模組授權條款的 URL。

Type:Uri
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ModuleList

指定模組中包含的模組陣列。

輸入每個模組名稱做為字串或含 ModuleNameModuleVersion 索引鍵的雜湊表。 雜湊表也可以有選用的 GUID 索引鍵。 您可以在參數值中結合字串和雜湊表。

這個索引鍵被設計來做為模組詳細目錄。 不會自動處理此索引鍵值中列出的模組。

Type:Object[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ModuleVersion

指定模組的版本。

Type:Version
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-NestedModules

指定 () 和二進位模組 .dll 的腳本模組 .psm1 , () 匯入模組的會話狀態。 NestedModules機碼中的檔案會依照值中列出的循序執行。

輸入每個模組名稱做為字串或含 ModuleNameModuleVersion 索引鍵的雜湊表。 雜湊表也可以有選用的 GUID 索引鍵。 您可以在參數值中結合字串和雜湊表。

Type:Object[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PackageManagementProviders

指定封裝管理提供者的陣列。

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PassThru

會傳回 物件,代表您正在使用的專案。 根據預設, Update-ModuleManifest 不會產生任何輸出。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Path

指定模組資訊清單的路徑和檔案名。 輸入副檔名為 .psd1 的路徑和檔案名,例如 $PSHOME\Modules\MyModule\MyModule.psd1

如果您指定現有檔案的路徑,除非檔案具有唯讀屬性, Update-ModuleManifest 否則會取代檔案而不發出警告。

資訊清單應該位於模組的目錄中,而資訊清單檔案名應該與模組目錄名稱相同,但副檔名 .psd1 為 。

您無法使用 或 $HOME 之類的 $PSHOME 變數來回應Path參數值的提示。 如果要使用變數,請在命令中包含 Path 參數。

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-PowerShellHostName

指定模組所需的 PowerShell 主機程式名稱。 輸入主機程式的名稱,例如 PowerShell ISE 主機或 ConsoleHost。 不允許萬用字元。

若要尋找主機程式的名稱,請在程式中輸入 $Host.Name

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PowerShellHostVersion

指定與模組搭配運作的 PowerShell 主機程式最低版本。 輸入版本號碼,例如 1.1。

Type:Version
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PowerShellVersion

指定將搭配此課程模組使用的 PowerShell 最低版本。 例如,您可以將 3.0、4.0 或 5.0 指定為此參數的值。

Type:Version
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Prerelease

表示模組是發行前版本。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PrivateData

指定匯入模組時傳遞至模組的資料。

Type:Hashtable
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ProcessorArchitecture

指定模組需要的處理器架構。

此參數可接受的值為:

  • Amd64
  • Arm
  • IA64
  • MSIL
  • 無 (未知或未指定的)
  • X86
Type:ProcessorArchitecture
Accepted values:None, MSIL, X86, IA64, Amd64, Arm
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ProjectUri

指定此專案相關網頁的 URL。

Type:Uri
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ReleaseNotes

指定字串陣列,其中包含您想要用於此版本的腳本的版本資訊或批註。

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RequiredAssemblies

指定模組所需的元件 (.dll) 檔案。 輸入組件檔案名稱。 PowerShell 會先載入指定的元件,再更新類型或格式、匯入巢狀模組,或匯入 RootModule 索引鍵值中指定的模組檔案。

使用此參數可指定模組所需的所有元件,包括必須載入的元件,以更新 FormatsToProcessTypesToProcess 索引鍵中列出的任何格式或類型檔案,即使這些元件也會列在 NestedModules 索引鍵中做為二進位模組也一樣。

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RequiredModules

指定必須在全域工作階段狀態的模組。 如果必要的模組不在全域會話狀態,PowerShell 會匯入這些模組。 如果無法使用所需的模組,命令就會 Import-Module 失敗。

Type:Object[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RequireLicenseAcceptance

指定模組需要接受授權。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RootModule

指定模組的主要或根檔案。 輸入腳本 () .ps1 的檔案名、腳本模組 () 、模組資訊清單 .psd1 () .psm1 、元件 .dll () 、Cmdlet 定義 XML 檔案 (.cdxml) 或工作流程 (.xaml) 。 匯入模組時,從根模組檔案匯出的成員會匯入呼叫者工作階段狀態。

如果模組有資訊清單檔,而且 RootModule 機碼中未指定根檔案,資訊清單就會成為模組的主要檔案。 而且,模組會變成資訊清單模組, (ModuleType = 資訊清單) 。

若要從 .psm1 模組中匯出具有資訊清單的成員或 .dll 檔案,這些檔案的名稱必須在資訊清單中的 RootModuleNestedModules 索引鍵值中指定。 否則,不會匯出其成員。

在 PowerShell 2.0 中,此金鑰稱為 ModuleToProcess

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ScriptsToProcess

指定腳本 (.ps1) 在匯入模組時,在呼叫端的會話狀態中執行的檔案。 您可以使用這些指令碼來準備環境,就像您使用登入指令碼一般。

如果要指定在模組工作階段狀態中執行的指令碼,請使用 NestedModules 索引鍵。

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Tags

指定標記的陣列。

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TypesToProcess

指定匯入模組時所執行之類型檔案 (.ps1xml) 。

當您匯入模組時,PowerShell 會使用指定的檔案執行 Update-TypeData Cmdlet。 因為類型檔案未限定範圍,所以會影響會話中的所有會話狀態。

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VariablesToExport

指定模組匯出的變數。 允許使用萬用字元。

使用此參數來限制模組匯出的變數。 VariablesToExport 可以從匯出的變數清單中移除變數,但無法將變數新增至清單中。

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-WhatIf

顯示執行時 Update-ModuleManifest 會發生什麼情況。 不會執行此 Cmdlet。

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

輸入

String

輸出

Object