New-ModuleManifest

Skapar ett nytt modulmanifest.

Syntax

New-ModuleManifest
   [-Path] <String>
   [-NestedModules <Object[]>]
   [-Guid <Guid>]
   [-Author <String>]
   [-CompanyName <String>]
   [-Copyright <String>]
   [-RootModule <String>]
   [-ModuleVersion <Version>]
   [-Description <String>]
   [-ProcessorArchitecture <ProcessorArchitecture>]
   [-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[]>]
   [-CompatiblePSEditions <String[]>]
   [-PrivateData <Object>]
   [-Tags <String[]>]
   [-ProjectUri <Uri>]
   [-LicenseUri <Uri>]
   [-IconUri <Uri>]
   [-ReleaseNotes <String>]
   [-Prerelease <String>]
   [-RequireLicenseAcceptance]
   [-ExternalModuleDependencies <String[]>]
   [-HelpInfoUri <String>]
   [-PassThru]
   [-DefaultCommandPrefix <String>]
   [-WhatIf]
   [-Confirm] 
   [<CommonParameters>]

Description

Cmdleten New-ModuleManifest skapar en ny modulmanifestfil (.psd1) som fyller i dess värden och sparar manifestfilen i den angivna sökvägen.

Modulförfattare kan använda den här cmdleten för att skapa ett manifest för sin modul. Ett modulmanifest är en .psd1 fil som innehåller en hash-tabell. Nycklarna och värdena i hash-tabellen beskriver innehållet och attributen i modulen, definierar förutsättningarna och avgör hur komponenterna bearbetas. Manifest krävs inte för en modul.

New-ModuleManifest skapar ett manifest som innehåller alla vanliga manifestnycklar, så att du kan använda standardutdata som en manifestmall. Om du vill lägga till eller ändra värden eller lägga till modulnycklar som den här cmdleten inte lägger till öppnar du den resulterande filen i en textredigerare.

Varje parameter, förutom Path och PassThru, skapar en modulmanifestnyckel och dess värde. I ett modulmanifest krävs endast ModuleVersion-nyckeln . Om du inte anger någon parameter i parameterbeskrivningen skapar du en kommentarssträng för det associerade värdet som inte har någon effekt om du utelämnar en parameter från kommandot New-ModuleManifest .

I PowerShell 2.0 New-ModuleManifest uppmanas du att ange värden för vanliga parametrar som inte anges i kommandot, förutom obligatoriska parametervärden. Från och med PowerShell 3.0 New-ModuleManifest uppmanas endast när obligatoriska parametervärden inte har angetts.

Om du planerar att publicera modulen i PowerShell-galleriet måste manifestet innehålla värden för vissa egenskaper. Mer information finns i Nödvändiga metadata för objekt som publicerats till PowerShell-galleriet i galleridokumentationen.

Exempel

Exempel 1 – Skapa ett nytt modulmanifest

I det här exemplet skapas ett nytt modulmanifest i filen som anges av parametern Sökväg . Parametern PassThru skickar utdata till pipelinen och till filen.

Utdata visar standardvärdena för alla nycklar i manifestet.

New-ModuleManifest -Path C:\ps-test\Test-Module\Test-Module.psd1 -PassThru

#
# Module manifest for module 'Test-Module'
#
# Generated by: ContosoAdmin
#
# Generated on: 7/12/2019
#

@{

# Script module or binary module file associated with this manifest.
# RootModule = ''

# Version number of this module.
ModuleVersion = '0.0.1'

# Supported PSEditions
# CompatiblePSEditions = @()

# ID used to uniquely identify this module
GUID = 'e1826c6e-c420-4eef-9ac8-185e3669ca6a'

# Author of this module
Author = 'ContosoAdmin'

# Company or vendor of this module
CompanyName = 'Unknown'

# Copyright statement for this module
Copyright = '(c) ContosoAdmin. All rights reserved.'

# Description of the functionality provided by this module
# Description = ''

# Minimum version of the PowerShell engine required by this module
# PowerShellVersion = ''

# Name of the PowerShell host required by this module
# PowerShellHostName = ''

# Minimum version of the PowerShell host required by this module
# PowerShellHostVersion = ''

# Minimum version of Microsoft .NET Framework required by this module. This prerequisite is valid for the PowerShell Desktop edition only.
# DotNetFrameworkVersion = ''

# Minimum version of the common language runtime (CLR) required by this module. This prerequisite is valid for the PowerShell Desktop edition only.
# CLRVersion = ''

# Processor architecture (None, X86, Amd64) required by this module
# ProcessorArchitecture = ''

# Modules that must be imported into the global environment prior to importing this module
# RequiredModules = @()

# Assemblies that must be loaded prior to importing this module
# RequiredAssemblies = @()

# Script files (.ps1) that are run in the caller's environment prior to importing this module.
# ScriptsToProcess = @()

# Type files (.ps1xml) to be loaded when importing this module
# TypesToProcess = @()

# Format files (.ps1xml) to be loaded when importing this module
# FormatsToProcess = @()

# Modules to import as nested modules of the module specified in RootModule/ModuleToProcess
# NestedModules = @()

# Functions to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no functions to export.
FunctionsToExport = @()

# Cmdlets to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no cmdlets to export.
CmdletsToExport = @()

# Variables to export from this module
VariablesToExport = '*'

# Aliases to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no aliases to export.
AliasesToExport = @()

# DSC resources to export from this module
# DscResourcesToExport = @()

# List of all modules packaged with this module
# ModuleList = @()

# List of all files packaged with this module
# FileList = @()

# Private data to pass to the module specified in RootModule/ModuleToProcess. This may also contain a PSData hashtable with additional module metadata used by PowerShell.
PrivateData = @{

    PSData = @{

        # Tags applied to this module. These help with module discovery in online galleries.
        # Tags = @()

        # A URL to the license for this module.
        # LicenseUri = ''

        # A URL to the main website for this project.
        # ProjectUri = ''

        # A URL to an icon representing this module.
        # IconUri = ''

        # ReleaseNotes of this module
        # ReleaseNotes = ''

        # Prerelease string of this module
        # Prerelease = ''

        # Flag to indicate whether the module requires explicit user acceptance for install/update/save
        # RequireLicenseAcceptance = $false

        # External dependent modules of this module
        # ExternalModuleDependencies = @()

    } # End of PSData hashtable

} # End of PrivateData hashtable

# HelpInfo URI of this module
# HelpInfoURI = ''

# Default prefix for commands exported from this module. Override the default prefix using Import-Module -Prefix.
# DefaultCommandPrefix = ''

}

Exempel 2 – Skapa ett nytt manifest med några förifyllda inställningar

I det här exemplet skapas ett nytt modulmanifest. Den använder parametrarna PowerShellVersion och AliasesToExport för att lägga till värden i motsvarande manifestnycklar.

$moduleSettings = @{
    PowerShellVersion = 1.0
    Path   = 'C:\ps-test\ManifestTest.psd1'
    AliasesToExport   = @(
      'JKBC'
      'DRC'
      'TAC'
    )
}
New-ModuleManifest @moduleSettings

Exempel 3 – Skapa ett manifest som kräver andra moduler

I det här exemplet används ett strängformat för att ange namnet på BitsTransfer-modulen och hashtabellformatet för att ange namnet, ett GUID och en version av modulen PSScheduledJob .

$moduleSettings = @{
  RequiredModules = ("BitsTransfer", @{
    ModuleName="PSScheduledJob"
    ModuleVersion="1.0.0.0";
    GUID="50cdb55f-5ab7-489f-9e94-4ec21ff51e59"
  })
  Path = 'C:\ps-test\ManifestTest.psd1'
}
New-ModuleManifest @moduleSettings

Det här exemplet visar hur du använder sträng- och hashtabellformaten för parametern ModuleList, RequiredModules och NestedModules. Du kan kombinera strängar och hash-tabeller i samma parametervärde.

Exempel 4 – Skapa ett manifest som stöder uppdateringsbar hjälp

I det här exemplet används parametern HelpInfoUri för att skapa en HelpInfoUri-nyckel i modulmanifestet. Värdet för parametern och nyckeln måste börja med http eller https. Det här värdet talar om för updatable Help-systemet var du hittar hjälpinformationsfilen helpinfo XML updatable för modulen.

$moduleSettings = @{
  HelpInfoUri = 'http://https://go.microsoft.com/fwlink/?LinkID=603'
  Path = 'C:\ps-test\ManifestTest.psd1'
}
New-ModuleManifest @moduleSettings

Information om uppdateringsbar hjälp finns i about_Updatable_Help. Information om XML-filen HelpInfo finns i Support Updatable Help (Stöd för uppdateringsbar hjälp).

Exempel 5 – Hämta modulinformation

Det här exemplet visar hur du hämtar konfigurationsvärdena för en modul. Värdena i modulmanifestet återspeglas i värdena för egenskaperna för modulobjektet.

Cmdleten Get-Module används för att hämta modulen Microsoft.PowerShell.Diagnostics med hjälp av parametern List . Kommandot skickar modulen till cmdleten Format-List för att visa alla egenskaper och värden för modulobjektet.

Get-Module Microsoft.PowerShell.Diagnostics -List | Format-List -Property *

LogPipelineExecutionDetails : False
Name                        : Microsoft.PowerShell.Diagnostics
Path                        : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\Microsoft.PowerShell.Diagnostics\Micro
                              soft.PowerShell.Diagnostics.psd1
Definition                  :
Description                 :
Guid                        : ca046f10-ca64-4740-8ff9-2565dba61a4f
HelpInfoUri                 : https://go.microsoft.com/fwlink/?LinkID=210596
ModuleBase                  : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\Microsoft.PowerShell.Diagnostics
PrivateData                 :
Version                     : 3.0.0.0
ModuleType                  : Manifest
Author                      : Microsoft Corporation
AccessMode                  : ReadWrite
ClrVersion                  : 4.0
CompanyName                 : Microsoft Corporation
Copyright                   : Microsoft Corporation. All rights reserved.
DotNetFrameworkVersion      :
ExportedFunctions           : {}
ExportedCmdlets             : {[Get-WinEvent, Get-WinEvent], [Get-Counter, Get-Counter], [Import-Counter,
                              Import-Counter], [Export-Counter, Export-Counter]...}
ExportedCommands            : {[Get-WinEvent, Get-WinEvent], [Get-Counter, Get-Counter], [Import-Counter,
                              Import-Counter], [Export-Counter, Export-Counter]...}
FileList                    : {}
ModuleList                  : {}
NestedModules               : {}
PowerShellHostName          :
PowerShellHostVersion       :
PowerShellVersion           : 3.0
ProcessorArchitecture       : None
Scripts                     : {}
RequiredAssemblies          : {}
RequiredModules             : {}
RootModule                  :
ExportedVariables           : {}
ExportedAliases             : {}
ExportedWorkflows           : {}
SessionState                :
OnRemove                    :
ExportedFormatFiles         : {C:\Windows\system32\WindowsPowerShell\v1.0\Event.format.ps1xml,
                              C:\Windows\system32\WindowsPowerShell\v1.0\Diagnostics.format.ps1xml}
ExportedTypeFiles           : {C:\Windows\system32\WindowsPowerShell\v1.0\GetEvent.types.ps1xml}

Parametrar

-AliasesToExport

Anger de alias som modulen exporterar. Jokertecken tillåts.

Du kan använda den här parametern för att begränsa de alias som exporteras av modulen. Det kan ta bort alias från listan över exporterade alias, men det kan inte lägga till alias i listan.

Om du utelämnar den här parametern New-ModuleManifest skapar du en AliasesToExport-nyckel med värdet * (alla), vilket innebär att alla alias som definieras i modulen exporteras av manifestet.

Typ:String[]
Position:Named
Standardvärde:* (all)
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:True

-Author

Anger modulförfattaren.

Om du utelämnar den här parametern New-ModuleManifest skapar du en Författare-nyckel med namnet på den aktuella användaren.

Typ:String
Position:Named
Standardvärde:Name of the current user
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-ClrVersion

Anger den lägsta versionen av Common Language Runtime (CLR) för Microsoft .NET Framework som modulen kräver.

Kommentar

Den här inställningen är endast giltig för PowerShell Desktop-versionen, till exempel Windows PowerShell 5.1, och gäller endast för .NET Framework-versioner som är lägre än 4,5. Det här kravet har ingen effekt för nyare versioner av PowerShell eller .NET Framework.

Typ:Version
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-CmdletsToExport

Anger de cmdletar som modulen exporterar. Jokertecken tillåts.

Du kan använda den här parametern för att begränsa de cmdletar som exporteras av modulen. Den kan ta bort cmdletar från listan över exporterade cmdletar, men det kan inte lägga till cmdletar i listan.

Om du utelämnar den här parametern New-ModuleManifest skapar du en CmdletsToExport-nyckel med värdet * (alla), vilket innebär att alla cmdletar som definierats i modulen exporteras av manifestet.

Typ:String[]
Position:Named
Standardvärde:* (all)
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:True

-CompanyName

Identifierar företaget eller leverantören som skapade modulen.

Om du utelämnar den här parametern New-ModuleManifest skapar du en CompanyName-nyckel med värdet "Okänd".

Typ:String
Position:Named
Standardvärde:"Unknown"
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-CompatiblePSEditions

Anger modulens kompatibla PSEditions. Information om PSEdition finns i Moduler med kompatibla PowerShell-utgåvor.

Typ:String[]
Godkända värden:Desktop, Core
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-Confirm

Uppmanar dig att bekräfta innan du kör cmdleten.

Typ:SwitchParameter
Alias:cf
Position:Named
Standardvärde:False
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

Anger en copyright-instruktion för modulen.

Om du utelämnar den här parametern New-ModuleManifest skapar du en copyrightnyckel med värdet (c) <year> <username>. All rights reserved. var <year> är det aktuella året och <username> är värdet för nyckeln Författare .

Typ:String
Position:Named
Standardvärde:(c) <year> <username>. All rights reserved.
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-DefaultCommandPrefix

Anger ett prefix som förbereds för substantiven för alla kommandon i modulen när de importeras till en session. Ange en prefixsträng. Prefix förhindrar konflikter med kommandonamn i en användares session.

Modulanvändare kan åsidosätta det här prefixet genom att ange prefixparametern för cmdleten Import-Module .

Den här parametern introducerades i PowerShell 3.0.

Typ:String
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-Description

Beskriver innehållet i modulen.

Typ:String
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-DotNetFrameworkVersion

Anger den lägsta version av Microsoft .NET Framework som modulen kräver.

Kommentar

Den här inställningen är endast giltig för PowerShell Desktop-versionen, till exempel Windows PowerShell 5.1, och gäller endast för .NET Framework-versioner som är lägre än 4,5. Det här kravet har ingen effekt för nyare versioner av PowerShell eller .NET Framework.

Typ:Version
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-DscResourcesToExport

Anger de DSC-resurser (Desired State Configuration) som modulen exporterar. Jokertecken tillåts.

Typ:String[]
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:True

-ExternalModuleDependencies

En lista över externa moduler som modulen är beroende av.

Typ:String[]
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-FileList

Anger alla objekt som ingår i modulen.

Den här nyckeln är utformad för att fungera som en modulinventering. Filerna som anges i nyckeln inkluderas när modulen publiceras, men alla funktioner exporteras inte automatiskt.

Typ:String[]
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-FormatsToProcess

Anger formateringsfilerna (.ps1xml) som körs när modulen importeras.

När du importerar en modul kör PowerShell cmdleten Update-FormatData med de angivna filerna. Eftersom formateringsfiler inte är begränsade påverkar de alla sessionstillstånd i sessionen.

Typ:String[]
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-FunctionsToExport

Anger de funktioner som modulen exporterar. Jokertecken tillåts.

Du kan använda den här parametern för att begränsa de funktioner som exporteras av modulen. Den kan ta bort funktioner från listan över exporterade alias, men det går inte att lägga till funktioner i listan.

Om du utelämnar den här parametern New-ModuleManifest skapar du en FunctionsToExport-nyckel med värdet * (alla), vilket innebär att alla funktioner som definierats i modulen exporteras av manifestet.

Typ:String[]
Position:Named
Standardvärde:* (all)
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:True

-Guid

Anger en unik identifierare för modulen. GUID kan användas för att skilja mellan moduler med samma namn.

Om du utelämnar den här parametern New-ModuleManifest skapar du en GUID-nyckel i manifestet och genererar ett GUID för värdet.

Om du vill skapa ett nytt GUID i PowerShell skriver du [guid]::NewGuid().

Typ:Guid
Position:Named
Standardvärde:A GUID generated for the module
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-HelpInfoUri

Anger internetadressen för XML-filen HelpInfo för modulen. Ange en URI (Uniform Resource Identifier) som börjar med http eller https.

Xml-filen HelpInfo stöder funktionen Updatable Help som introducerades i PowerShell 3.0. Den innehåller information om platsen för nedladdningsbara hjälpfiler för modulen och versionsnumren för de senaste hjälpfilerna för varje språk som stöds.

Information om uppdateringsbar hjälp finns i about_Updatable_Help. Information om XML-filen HelpInfo finns i Support Updatable Help (Stöd för uppdateringsbar hjälp).

Den här parametern introducerades i PowerShell 3.0.

Typ:String
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-IconUri

Anger URL:en för en ikon för modulen. Den angivna ikonen visas på galleriets webbsida för modulen.

Typ:Uri
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-LicenseUri

Anger URL:en för licensvillkoren för modulen.

Typ:Uri
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-ModuleList

Visar en lista över alla moduler som ingår i den här modulen.

Ange varje modulnamn som en sträng eller som en hash-tabell med ModuleName - och ModuleVersion-nycklar . Hash-tabellen kan också ha en valfri GUID-nyckel . Du kan kombinera strängar och hash-tabeller i parametervärdet.

Den här nyckeln är utformad för att fungera som en modulinventering. Modulerna som anges i värdet för den här nyckeln bearbetas inte automatiskt.

Typ:Object[]
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-ModuleVersion

Anger modulens version.

Den här parametern krävs inte, men en ModuleVersion-nyckel krävs i manifestet. Om du utelämnar den här parametern New-ModuleManifest skapar du en ModuleVersion-nyckel med värdet 1.0.

Typ:Version
Position:Named
Standardvärde:1.0
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-NestedModules

Anger skriptmoduler (.psm1) och binära moduler (.dll) som importeras till modulens sessionstillstånd. Filerna i nestedModules-nyckeln körs i den ordning de anges i värdet.

Ange varje modulnamn som en sträng eller som en hash-tabell med ModuleName - och ModuleVersion-nycklar . Hash-tabellen kan också ha en valfri GUID-nyckel . Du kan kombinera strängar och hash-tabeller i parametervärdet.

Vanligtvis innehåller kapslade moduler kommandon som rotmodulen behöver för sin interna bearbetning. Som standard exporteras kommandona i kapslade moduler från modulens sessionstillstånd till anroparens sessionstillstånd, men rotmodulen kan begränsa de kommandon som den exporterar. Till exempel genom att använda ett Export-ModuleMember kommando.

Kapslade moduler i modulsessionstillståndet är tillgängliga för rotmodulen, men de returneras inte av ett Get-Module kommando i anroparens sessionstillstånd.

Skript (.ps1) som anges i nyckeln NestedModules körs i modulens sessionstillstånd, inte i anroparens sessionstillstånd. Om du vill köra ett skript i anroparens sessionstillstånd anger du skriptfilens namn i värdet för ScriptsToProcess-nyckeln i manifestet.

Typ:Object[]
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-PassThru

Skriver det resulterande modulmanifestet till konsolen och skapar en .psd1 fil. Som standard genererar den här cmdleten inga utdata.

Typ:SwitchParameter
Position:Named
Standardvärde:False
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-Path

Anger sökvägen och filnamnet för det nya modulmanifestet. Ange en sökväg och ett filnamn med filnamnstillägget .psd1 , till exempel $pshome\Modules\MyModule\MyModule.psd1. Parametern Path krävs.

Om du anger sökvägen till en befintlig fil New-ModuleManifest ersätter den utan varning såvida inte filen har det skrivskyddade attributet.

Manifestet ska finnas i modulens katalog och manifestfilens namn ska vara samma som modulkatalognamnet, men med filnamnstillägget .psd1 .

Kommentar

Du kan inte använda variabler, till exempel $PSHOME eller $HOME, som svar på en fråga om parametervärdet Sökväg . Om du vill använda en variabel tar du med parametern Path i kommandot .

Typ:String
Position:1
Standardvärde:None
Obligatorisk:True
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-PowerShellHostName

Anger namnet på det PowerShell-värdprogram som modulen kräver. Ange namnet på värdprogrammet, till exempel Windows PowerShell ISE-värd eller ConsoleHost. Jokertecken är inte tillåtna.

Om du vill hitta namnet på ett värdprogram skriver du $Host.Namei programmet .

Typ:String
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-PowerShellHostVersion

Anger den lägsta versionen av PowerShell-värdprogrammet som fungerar med modulen. Ange ett versionsnummer, till exempel 1.1.

Typ:Version
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-PowerShellVersion

Anger den lägsta versionen av PowerShell som fungerar med den här modulen. Du kan till exempel ange 1.0, 2.0 eller 3.0 som parameterns värde. Det måste vara i X.X-format. Om du till exempel skickar 5genererar PowerShell ett fel.

Typ:Version
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-Prerelease

Förhandsversionssträng för den här modulen. Om du lägger till en förhandsversionssträng identifieras modulen som en förhandsversion. När modulen publiceras i PowerShell-galleriet används dessa data för att identifiera förhandsversionspaket. Om du vill hämta förhandsversionspaket från galleriet måste du använda parametern AllowPrerelease med PowerShellGet-kommandona Find-Module, Install-Module, Update-Moduleoch Save-Module.

Typ:String
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-PrivateData

Anger data som skickas till modulen när den importeras.

Typ:Object
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-ProcessorArchitecture

Anger den processorarkitektur som modulen kräver. Giltiga värden är x86, AMD64, IA64, MSIL och None (okänd eller ospecificerad).

Typ:ProcessorArchitecture
Godkända värden:None, MSIL, X86, IA64, Amd64, Arm
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-ProjectUri

Anger URL:en för en webbsida om det här projektet.

Typ:Uri
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-ReleaseNotes

Anger viktig information.

Typ:String
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-RequiredAssemblies

Anger de sammansättningsfiler (.dll) som modulen kräver. Ange sammansättningsfilnamnen. PowerShell läser in de angivna sammansättningarna innan du uppdaterar typer eller format, importerar kapslade moduler eller importerar modulfilen som anges i värdet för RootModule-nyckeln .

Använd den här parametern om du vill visa en lista över alla sammansättningar som krävs i modulen, inklusive sammansättningar som måste läsas in för att uppdatera formaterings- eller typfiler som anges i tangenterna FormatsToProcess eller TypesToProcess , även om dessa sammansättningar också visas som binära moduler i nestedModules-nyckeln .

Typ:String[]
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-RequiredModules

Anger moduler som måste vara i det globala sessionstillståndet. Om de moduler som krävs inte är i det globala sessionstillståndet importerar PowerShell dem. Om de moduler som krävs inte är tillgängliga misslyckas Import-Module kommandot.

Ange varje modulnamn som en sträng eller som en hash-tabell med ModuleName - och ModuleVersion-nycklar . Hash-tabellen kan också ha en valfri GUID-nyckel . Du kan kombinera strängar och hash-tabeller i parametervärdet.

I PowerShell 2.0 Import-Module importerar du inte nödvändiga moduler automatiskt. Det verifierar bara att de moduler som krävs är i det globala sessionstillståndet.

Typ:Object[]
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-RequireLicenseAcceptance

Flagga för att ange om modulen kräver explicit användargodkännande för installation, uppdatering eller sparande.

Typ:SwitchParameter
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-RootModule

Anger modulens primära fil eller rotfil. Ange filnamnet för ett skript (.ps1), en skriptmodul (.psm1), ett modulmanifest(.psd1), en sammansättning (.dll), en CMDLET-definitions-XML-fil (.cdxml) eller ett arbetsflöde (.xaml). När modulen importeras importeras de medlemmar som exporteras från rotmodulfilen till anroparens sessionstillstånd.

Om en modul har en manifestfil och ingen rotfil har angetts i RootModule-nyckeln blir manifestet den primära filen för modulen och modulen blir en manifestmodul (ModuleType = Manifest).

Om du vill exportera medlemmar från .psm1 eller .dll filer i en modul som har ett manifest måste namnen på dessa filer anges i värdena för RootModule - eller NestedModules-nycklarna i manifestet. Annars exporteras inte deras medlemmar.

Kommentar

I PowerShell 2.0 kallades den här nyckeln ModuleToProcess. Du kan använda parameternamnet RootModule eller dess ModuleToProcess-alias .

Typ:String
Alias:ModuleToProcess
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-ScriptsToProcess

Anger skriptfiler (.ps1) som körs i anroparens sessionstillstånd när modulen importeras. Du kan använda dessa skript för att förbereda en miljö, precis som du kan använda ett inloggningsskript.

Om du vill ange skript som körs i modulens sessionstillstånd använder du nyckeln NestedModules .

Typ:String[]
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-Tags

Anger en matris med taggar.

Typ:String[]
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-TypesToProcess

Anger de typfiler (.ps1xml) som körs när modulen importeras.

När du importerar modulen kör PowerShell cmdleten Update-TypeData med de angivna filerna. Eftersom typfiler inte är begränsade påverkar de alla sessionstillstånd i sessionen.

Typ:String[]
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-VariablesToExport

Anger de variabler som modulen exporterar. Jokertecken tillåts.

Du kan använda den här parametern för att begränsa de variabler som exporteras av modulen. Det kan ta bort variabler från listan över exporterade variabler, men det kan inte lägga till variabler i listan.

Om du utelämnar den här parametern New-ModuleManifest skapar du en VariablesToExport-nyckel med värdet * (alla), vilket innebär att alla variabler som definierats i modulen exporteras av manifestet.

Typ:String[]
Position:Named
Standardvärde:* (all)
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:True

-WhatIf

Visar vad som skulle hända om New-ModuleManifest körs. Cmdleten körs inte.

Typ:SwitchParameter
Alias:wi
Position:Named
Standardvärde:False
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

Indata

None

Du kan inte skicka objekt till den här cmdleten.

Utdata

None

Som standard returnerar den här cmdleten inga utdata.

String

När du använder parametern PassThru returnerar den här cmdleten en sträng som representerar modulmanifestet.

Kommentarer

New-ModuleManifest körs på Windows- och icke-Windows-plattformar skapar modulmanifestfiler (.psd1) kodade som UTF8NoBOM.

Modulmanifest är vanligtvis valfria. Ett modulmanifest krävs dock för att exportera en sammansättning som är installerad i den globala sammansättningscacheminnet.

Om du vill lägga till eller ändra filer i $pshome\Modules katalogen startar du PowerShell med alternativet Kör som administratör .

Kommentar

Från och med PowerShell 6.2 försöker PowerShell läsa in alla DLL-filer som anges i egenskapen FileList för modulmanifestet. Interna DLL:er finns i FileList som inte kan läsas in i processen och felet ignoreras. Alla hanterade DLL:er läses in i processen. Det här beteendet har tagits bort i PowerShell 7.1.

I PowerShell 2.0 var många parametrar New-ModuleManifest för obligatoriska, även om de inte behövdes i ett modulmanifest. Från och med PowerShell 3.0 är endast parametern Path obligatorisk.

En session är en instans av PowerShell-körningsmiljön. En session kan ha ett eller flera sessionstillstånd. Som standard har en session endast ett globalt sessionstillstånd, men varje importerad modul har sitt eget sessionstillstånd. Sessionstillstånd tillåter att kommandona i en modul körs utan att det globala sessionstillståndet påverkas.

Anroparens sessionstillstånd är sessionstillståndet som en modul importeras till. Vanligtvis refererar den till det globala sessionstillståndet, men när en modul importerar kapslade moduler är anroparen modulen och anroparens sessionstillstånd är modulens sessionstillstånd.