共用方式為


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) 檔案。

範例

範例 1:更新模組指令清單

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

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

Update-ModuleManifest @Parms

$Parms 是一個 Splat,可儲存 PathAuthorCompanyNameCopyright 的參數值。 Update-ModuleManifest 會從 @Parms 取得參數值,並更新模組指令清單 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) 最低版本。

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 最低版本。

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

指定匯 .psm1 入模組會話狀態的腳本模組 () 和二進位模組 .dll () 。 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 、腳本模組 () .psm1 、模組指令清單 .psd1 () 、元件 .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

備註

重要

從 2020 年 4 月起,PowerShell 資源庫已不再支援傳輸層安全性 (TLS) 1.0 和 1.1 版。 如果您不是使用 TLS 1.2 或更高版本,您在嘗試存取 PowerShell 資源庫時將會收到錯誤。 使用下列命令來確保您使用的是 TLS 1.2:

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

如需詳細資訊,請參閱 PowerShell 部落格中的公告 \(英文\)。