New-ModuleManifest
Hiermee maakt u een nieuw modulemanifest.
Syntaxis
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
De New-ModuleManifest
cmdlet maakt een nieuw modulemanifestbestand (.psd1
) en vult de waarden in en slaat het manifestbestand op in het opgegeven pad.
Auteurs van modules kunnen deze cmdlet gebruiken om een manifest voor hun module te maken. Een modulemanifest is een .psd1
bestand dat een hash-tabel bevat. De sleutels en waarden in de hash-tabel beschrijven de inhoud en kenmerken van de module, definiëren de vereisten en bepalen hoe de onderdelen worden verwerkt. Manifesten zijn niet vereist voor een module.
New-ModuleManifest
maakt een manifest dat alle veelgebruikte manifestsleutels bevat, zodat u de standaarduitvoer kunt gebruiken als een manifestsjabloon. Als u waarden wilt toevoegen of wijzigen, of als u modulesleutels wilt toevoegen die niet door deze cmdlet worden toegevoegd, opent u het resulterende bestand in een teksteditor.
Elke parameter, met uitzondering van Path en PassThru, maakt een modulemanifestsleutel en de bijbehorende waarde.
In een modulemanifest is alleen de ModuleVersion-sleutel vereist. Als u een parameter weglaat uit de opdracht, New-ModuleManifest
maakt u een opmerkingtekenreeks voor de bijbehorende waarde die geen effect heeft, tenzij u in de parameterbeschrijving hebt opgegeven.
In PowerShell 2.0 New-ModuleManifest
wordt u gevraagd om de waarden van veelgebruikte parameters die niet zijn opgegeven in de opdracht, naast de vereiste parameterwaarden. Vanaf PowerShell 3.0 New-ModuleManifest
wordt alleen gevraagd wanneer de vereiste parameterwaarden niet zijn opgegeven.
Als u van plan bent om uw module te publiceren in de PowerShell Gallery, moet het manifest waarden voor bepaalde eigenschappen bevatten. Zie Vereiste metagegevens voor items die zijn gepubliceerd in de PowerShell Gallery in de galeriedocumentatie voor meer informatie.
Voorbeelden
Voorbeeld 1: een nieuw modulemanifest maken
In dit voorbeeld wordt een nieuw modulemanifest gemaakt in het bestand dat is opgegeven door de parameter Path . De passThru-parameter verzendt de uitvoer naar de pijplijn en naar het bestand.
De uitvoer toont de standaardwaarden van alle sleutels in het manifest.
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 = ''
}
Voorbeeld 2: een nieuw manifest maken met een aantal vooraf ingevulde instellingen
In dit voorbeeld wordt een nieuw modulemanifest gemaakt. Hierbij worden de parameters PowerShellVersion en AliasesToExport gebruikt om waarden toe te voegen aan de bijbehorende manifestsleutels.
$moduleSettings = @{
PowerShellVersion = 1.0
Path = 'C:\ps-test\ManifestTest.psd1'
AliasesToExport = @(
'JKBC'
'DRC'
'TAC'
)
}
New-ModuleManifest @moduleSettings
Voorbeeld 3: een manifest maken waarvoor andere modules zijn vereist
In dit voorbeeld wordt een tekenreeksindeling gebruikt om de naam van de BitsTransfer-module en de hashtabelindeling op te geven om de naam, een GUID en een versie van de PSScheduledJob-module op te geven.
$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
In dit voorbeeld ziet u hoe u de tekenreeks- en hashtabelindelingen van de parameter ModuleList, RequiredModules en NestedModules gebruikt. U kunt tekenreeksen en hashtabellen combineren in dezelfde parameterwaarde.
Voorbeeld 4: Een manifest maken dat ondersteuning biedt voor updatebare Help
In dit voorbeeld wordt de parameter HelpInfoUri gebruikt om een HelpInfoUri-sleutel te maken in het modulemanifest. De waarde van de parameter en de sleutel moeten beginnen met http of https. Deze waarde vertelt het Help-systeem Updatable Help waar het HelpInfo XML-informatiebestand voor de module kan worden bijgewerkt.
$moduleSettings = @{
HelpInfoUri = 'http://https://go.microsoft.com/fwlink/?LinkID=603'
Path = 'C:\ps-test\ManifestTest.psd1'
}
New-ModuleManifest @moduleSettings
Zie about_Updatable_Help voor informatie over Help bijwerken. Zie Ondersteunende Help-informatie over het XML-bestand help voor Help voor Help-informatie over help die kan worden bijgewerkt.
Voorbeeld 5: modulegegevens ophalen
In dit voorbeeld ziet u hoe u de configuratiewaarden van een module kunt ophalen. De waarden in het modulemanifest worden weergegeven in de waarden van eigenschappen van het moduleobject.
De Get-Module
cmdlet wordt gebruikt om de module Microsoft.PowerShell.Diagnostics op te halen met behulp van de parameter List . Met de opdracht wordt de module naar de Format-List
cmdlet verzonden om alle eigenschappen en waarden van het moduleobject weer te geven.
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}
Parameters
-AliasesToExport
Hiermee geeft u de aliassen op die de module exporteert. Jokertekens zijn toegestaan.
U kunt deze parameter gebruiken om de aliassen te beperken die door de module worden geëxporteerd. Er kunnen aliassen worden verwijderd uit de lijst met geëxporteerde aliassen, maar er kunnen geen aliassen aan de lijst worden toegevoegd.
Als u deze parameter weglaat, New-ModuleManifest
maakt u een AliasesToExport-sleutel met de waarde *
(alle), wat betekent dat alle aliassen die in de module zijn gedefinieerd, door het manifest worden geëxporteerd.
Type: | String[] |
Position: | Named |
Default value: | * (all) |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | True |
-Author
Hiermee geeft u de auteur van de module op.
Als u deze parameter weglaat, New-ModuleManifest
maakt u een Auteur-sleutel met de naam van de huidige gebruiker.
Type: | String |
Position: | Named |
Default value: | Name of the current user |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-ClrVersion
Hiermee geeft u de minimale versie van de Common Language Runtime (CLR) van microsoft .NET Framework op die voor de module is vereist.
Notitie
Deze instelling is alleen geldig voor de PowerShell Desktop-editie, zoals Windows PowerShell 5.1, en is alleen van toepassing op .NET Framework-versies lager dan 4.5. Deze vereiste heeft geen effect voor nieuwere versies van PowerShell of .NET Framework.
Type: | Version |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-CmdletsToExport
Hiermee geeft u de cmdlets op die de module exporteert. Jokertekens zijn toegestaan.
U kunt deze parameter gebruiken om de cmdlets te beperken die door de module worden geëxporteerd. Het kan cmdlets verwijderen uit de lijst met geëxporteerde cmdlets, maar kan geen cmdlets toevoegen aan de lijst.
Als u deze parameter weglaat, New-ModuleManifest
maakt u een CmdletsToExport-sleutel met de waarde *
(alle), wat betekent dat alle cmdlets die in de module zijn gedefinieerd, door het manifest worden geëxporteerd.
Type: | String[] |
Position: | Named |
Default value: | * (all) |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | True |
-CompanyName
Identificeert het bedrijf of de leverancier die de module heeft gemaakt.
Als u deze parameter weglaat, New-ModuleManifest
maakt u een CompanyName-sleutel met de waarde Onbekend.
Type: | String |
Position: | Named |
Default value: | "Unknown" |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-CompatiblePSEditions
Hiermee geeft u de compatibele PSEditions van de module. Zie Modules met compatibele PowerShell-edities voor meer informatie over PSEdition.
Type: | String[] |
Geaccepteerde waarden: | Desktop, Core |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Confirm
Hiermee wordt u gevraagd om bevestiging voordat u de cmdlet uitvoert.
Type: | SwitchParameter |
Aliassen: | cf |
Position: | Named |
Default value: | False |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Copyright
Hiermee geeft u een copyright-instructie voor de module.
Als u deze parameter weglaat, New-ModuleManifest
maakt u een Copyright-sleutel met de waarde (c) <year> <username>. All rights reserved.
waar <year>
het huidige jaar is en <username>
is dit de waarde van de auteursleutel .
Type: | String |
Position: | Named |
Default value: | (c) <year> <username>. All rights reserved. |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-DefaultCommandPrefix
Hiermee geeft u een voorvoegsel op dat wordt voorafgegaan door de zelfstandige naamwoorden van alle opdrachten in de module wanneer ze in een sessie worden geïmporteerd. Voer een tekenreeks voor het voorvoegsel in. Voorvoegsels voorkomen conflicten in de opdrachtnaam in de sessie van een gebruiker.
Modulegebruikers kunnen dit voorvoegsel overschrijven door de parameter Voorvoegsel van de Import-Module
cmdlet op te geven.
Deze parameter is geïntroduceerd in PowerShell 3.0.
Type: | String |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Description
Beschrijft de inhoud van de module.
Type: | String |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-DotNetFrameworkVersion
Hiermee geeft u de minimale versie van microsoft .NET Framework op die voor de module is vereist.
Notitie
Deze instelling is alleen geldig voor de PowerShell Desktop-editie, zoals Windows PowerShell 5.1, en is alleen van toepassing op .NET Framework-versies lager dan 4.5. Deze vereiste heeft geen effect voor nieuwere versies van PowerShell of .NET Framework.
Type: | Version |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-DscResourcesToExport
Hiermee geeft u de DSC-resources (Desired State Configuration) op die door de module worden geëxporteerd. Jokertekens zijn toegestaan.
Type: | String[] |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | True |
-ExternalModuleDependencies
Een lijst met externe modules waarvan deze module afhankelijk is.
Type: | String[] |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-FileList
Hiermee geeft u alle items op die zijn opgenomen in de module.
Deze sleutel is ontworpen om te fungeren als een module-inventaris. De bestanden die in de sleutel worden vermeld, worden opgenomen wanneer de module wordt gepubliceerd, maar functies worden niet automatisch geëxporteerd.
Type: | String[] |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-FormatsToProcess
Hiermee geeft u de opmaakbestanden (.ps1xml
) op die worden uitgevoerd wanneer de module wordt geïmporteerd.
Wanneer u een module importeert, voert PowerShell de Update-FormatData
cmdlet uit met de opgegeven bestanden.
Omdat opmaakbestanden niet binnen het bereik vallen, hebben ze invloed op alle sessiestatussen in de sessie.
Type: | String[] |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-FunctionsToExport
Hiermee geeft u de functies op die door de module worden geëxporteerd. Jokertekens zijn toegestaan.
U kunt deze parameter gebruiken om de functies te beperken die door de module worden geëxporteerd. Het kan functies verwijderen uit de lijst met geëxporteerde aliassen, maar er kunnen geen functies aan de lijst worden toegevoegd.
Als u deze parameter weglaat, New-ModuleManifest
maakt u een FunctionsToExport-sleutel met de waarde *
(alle), wat betekent dat alle functies die in de module zijn gedefinieerd, door het manifest worden geëxporteerd.
Type: | String[] |
Position: | Named |
Default value: | * (all) |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | True |
-Guid
Hiermee geeft u een unieke id voor de module. De GUID kan worden gebruikt om onderscheid te maken tussen modules met dezelfde naam.
Als u deze parameter weglaat, New-ModuleManifest
maakt u een GUID-sleutel in het manifest en genereert u een GUID voor de waarde.
Als u een nieuwe GUID wilt maken in PowerShell, typt [guid]::NewGuid()
u .
Type: | Guid |
Position: | Named |
Default value: | A GUID generated for the module |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-HelpInfoUri
Hiermee geeft u het internetadres van het XML-bestand HelpInfo voor de module. Voer een URI (Uniform Resource Identifier) in die begint met http of https.
Het XML-bestand helpinfo ondersteunt de Help-functie Updatable die is geïntroduceerd in PowerShell 3.0. Het bevat informatie over de locatie van downloadbare Help-bestanden voor de module en de versienummers van de nieuwste Help-bestanden voor elke ondersteunde landinstelling.
Zie about_Updatable_Help voor informatie over Help bijwerken. Zie Ondersteunende Help-informatie over het XML-bestand help voor Help voor Help-informatie over help die kan worden bijgewerkt.
Deze parameter is geïntroduceerd in PowerShell 3.0.
Type: | String |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-IconUri
Hiermee geeft u de URL van een pictogram voor de module. Het opgegeven pictogram wordt weergegeven op de galeriewebpagina voor de module.
Type: | Uri |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-LicenseUri
Hiermee geeft u de URL van licentievoorwaarden voor de module.
Type: | Uri |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-ModuleList
Geeft een lijst weer van alle modules die zijn opgenomen in deze module.
Voer elke modulenaam in als een tekenreeks of als een hash-tabel met ModuleName - en ModuleVersion-sleutels . De hashtabel kan ook een optionele GUID-sleutel hebben. U kunt tekenreeksen en hashtabellen combineren in de parameterwaarde.
Deze sleutel is ontworpen om te fungeren als een module-inventaris. De modules die worden vermeld in de waarde van deze sleutel, worden niet automatisch verwerkt.
Type: | Object[] |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-ModuleVersion
Hiermee geeft u de versie van de module op.
Deze parameter is niet vereist, maar er is een ModuleVersion-sleutel vereist in het manifest. Als u deze parameter weglaat, New-ModuleManifest
maakt u een ModuleVersion-sleutel met de waarde 1.0.
Type: | Version |
Position: | Named |
Default value: | 1.0 |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-NestedModules
Hiermee geeft u scriptmodules (.psm1
) en binaire modules (.dll
) op die in de sessiestatus van de module worden geïmporteerd. De bestanden in de sleutel NestedModules worden uitgevoerd in de volgorde waarin ze worden vermeld in de waarde.
Voer elke modulenaam in als een tekenreeks of als een hash-tabel met ModuleName - en ModuleVersion-sleutels . De hashtabel kan ook een optionele GUID-sleutel hebben. U kunt tekenreeksen en hashtabellen combineren in de parameterwaarde.
Geneste modules bevatten doorgaans opdrachten die de hoofdmodule nodig heeft voor de interne verwerking.
Standaard worden de opdrachten in geneste modules geëxporteerd van de sessiestatus van de module naar de sessiestatus van de aanroeper, maar de hoofdmodule kan de opdrachten beperken die worden geëxporteerd. Bijvoorbeeld met behulp van een Export-ModuleMember
opdracht.
Geneste modules in de sessiestatus van de module zijn beschikbaar voor de hoofdmodule, maar worden niet geretourneerd door een Get-Module
opdracht in de sessiestatus van de aanroeper.
Scripts (.ps1
) die worden vermeld in de sleutel NestedModules , worden uitgevoerd in de sessiestatus van de module, niet in de sessiestatus van de aanroeper. Als u een script in de sessiestatus van de aanroeper wilt uitvoeren, vermeldt u de bestandsnaam van het script in de waarde van de Sleutel ScriptsToProcess in het manifest.
Type: | Object[] |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-PassThru
Hiermee schrijft u het resulterende modulemanifest naar de console en maakt u een .psd1
bestand. Deze cmdlet genereert standaard geen uitvoer.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Path
Hiermee geeft u het pad en de bestandsnaam van het nieuwe modulemanifest. Voer een pad en bestandsnaam in met een .psd1
bestandsnaamextensie, zoals $pshome\Modules\MyModule\MyModule.psd1
. De padparameter is vereist.
Als u het pad naar een bestaand bestand opgeeft, vervangt u het bestand zonder waarschuwing, New-ModuleManifest
tenzij het bestand het kenmerk Alleen-lezen heeft.
Het manifest moet zich in de map van de module bevinden en de naam van het manifestbestand moet hetzelfde zijn als de naam van de modulemap, maar met een .psd1
bestandsnaamextensie.
Notitie
U kunt geen variabelen gebruiken, zoals $PSHOME
of $HOME
, als reactie op een prompt voor een padparameterwaarde . Als u een variabele wilt gebruiken, neemt u de parameter Path op in de opdracht.
Type: | String |
Position: | 1 |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-PowerShellHostName
Hiermee geeft u de naam op van het PowerShell-hostprogramma dat voor de module is vereist. Voer de naam in van het hostprogramma, zoals Windows PowerShell ISE Host of ConsoleHost. Jokertekens zijn niet toegestaan.
Als u de naam van een hostprogramma wilt zoeken, typt $Host.Name
u in het programma.
Type: | String |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-PowerShellHostVersion
Hiermee geeft u de minimale versie van het PowerShell-hostprogramma op dat met de module werkt. Voer een versienummer in, zoals 1.1.
Type: | Version |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-PowerShellVersion
Hiermee geeft u de minimale versie van PowerShell op die met deze module werkt. U kunt bijvoorbeeld 1.0, 2.0 of 3.0 invoeren als de waarde van de parameter. Deze moet een X.X-indeling hebben. Als u bijvoorbeeld verzendt 5
, genereert PowerShell een fout.
Type: | Version |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Prerelease
Prerelease-tekenreeks van deze module. Als u een Prerelease-tekenreeks toevoegt, wordt de module geïdentificeerd als een voorlopige versie. Wanneer de module wordt gepubliceerd in de PowerShell Gallery, worden deze gegevens gebruikt om prereleasepakketten te identificeren. Als u prereleasepakketten wilt verkrijgen uit de galerie, moet u de parameter AllowPrerelease gebruiken met de PowerShellGet-opdrachten Find-Module
, Install-Module
en Update-Module
Save-Module
.
Type: | String |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-PrivateData
Hiermee geeft u gegevens op die worden doorgegeven aan de module wanneer deze worden geïmporteerd.
Type: | Object |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-ProcessorArchitecture
Hiermee geeft u de processorarchitectuur op die nodig is voor de module. Geldige waarden zijn x86, AMD64, IA64, MSIL en None (onbekend of niet opgegeven).
Type: | ProcessorArchitecture |
Geaccepteerde waarden: | None, MSIL, X86, IA64, Amd64, Arm |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-ProjectUri
Hiermee geeft u de URL van een webpagina over dit project.
Type: | Uri |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-ReleaseNotes
Hiermee geeft u releaseopmerkingen op.
Type: | String |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-RequiredAssemblies
Hiermee geeft u de assemblybestanden (.dll
) op die de module nodig heeft. Voer de namen van de assemblybestanden in.
PowerShell laadt de opgegeven assembly's voordat u typen of indelingen bijwerkt, geneste modules importeert of het modulebestand importeert dat is opgegeven in de waarde van de RootModule-sleutel .
Gebruik deze parameter om alle assembly's weer te geven die de module nodig heeft, inclusief assembly's die moeten worden geladen om opmaak- of typebestanden bij te werken die worden vermeld in de sleutels FormatsToProcess of TypesToProcess , zelfs als deze assembly's ook worden vermeld als binaire modules in de sleutel NestedModules .
Type: | String[] |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-RequiredModules
Hiermee geeft u modules op die de globale sessiestatus moeten hebben. Als de vereiste modules niet de status van de globale sessie hebben, worden deze geïmporteerd in PowerShell. Als de vereiste modules niet beschikbaar zijn, mislukt de Import-Module
opdracht.
Voer elke modulenaam in als een tekenreeks of als een hash-tabel met ModuleName - en ModuleVersion-sleutels . De hashtabel kan ook een optionele GUID-sleutel hebben. U kunt tekenreeksen en hashtabellen combineren in de parameterwaarde.
In PowerShell 2.0 Import-Module
worden de vereiste modules niet automatisch geïmporteerd. Er wordt alleen gecontroleerd of de vereiste modules de status van de globale sessie hebben.
Type: | Object[] |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-RequireLicenseAcceptance
Vlag om aan te geven of voor de module expliciete gebruikersacceptatie is vereist voor installatie, update of opslaan.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-RootModule
Hiermee geeft u het primaire of hoofdbestand van de module. Voer de bestandsnaam van een script (), een scriptmodule (.ps1
.psm1
), een modulemanifest(.psd1
), een assembly (.dll
), een XML-bestand met de cmdletdefinitie () of een werkstroom (.cdxml
.xaml
) in. Wanneer de module wordt geïmporteerd, worden de leden die uit het hoofdmodulebestand worden geëxporteerd, geïmporteerd in de sessiestatus van de aanroeper.
Als een module een manifestbestand heeft en er geen hoofdbestand is aangewezen in de rootModule-sleutel , wordt het manifest het primaire bestand voor de module en wordt de module een manifestmodule (ModuleType = Manifest).
Als u leden wilt exporteren uit .psm1
of .dll
bestanden in een module met een manifest, moeten de namen van deze bestanden worden opgegeven in de waarden van de sleutels RootModule of NestedModules in het manifest. Anders worden hun leden niet geëxporteerd.
Notitie
In PowerShell 2.0 werd deze sleutel ModuleToProcess genoemd. U kunt de parameternaam van de RootModule of de bijbehorende ModuleToProcess-alias gebruiken.
Type: | String |
Aliassen: | ModuleToProcess |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-ScriptsToProcess
Hiermee geeft u scriptbestanden op.ps1
die worden uitgevoerd in de sessiestatus van de aanroeper wanneer de module wordt geïmporteerd.
U kunt deze scripts gebruiken om een omgeving voor te bereiden, net zoals u een aanmeldingsscript kunt gebruiken.
Als u scripts wilt opgeven die worden uitgevoerd in de sessiestatus van de module, gebruikt u de sleutel NestedModules .
Type: | String[] |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Tags
Hiermee geeft u een matrix van tags.
Type: | String[] |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-TypesToProcess
Hiermee geeft u de typebestanden (.ps1xml
) die worden uitgevoerd wanneer de module wordt geïmporteerd.
Wanneer u de module importeert, voert PowerShell de Update-TypeData
cmdlet uit met de opgegeven bestanden.
Omdat typebestanden niet binnen het bereik vallen, hebben ze invloed op alle sessiestatussen in de sessie.
Type: | String[] |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-VariablesToExport
Hiermee geeft u de variabelen op die door de module worden geëxporteerd. Jokertekens zijn toegestaan.
U kunt deze parameter gebruiken om de variabelen te beperken die door de module worden geëxporteerd. Het kan variabelen verwijderen uit de lijst met geëxporteerde variabelen, maar er kunnen geen variabelen aan de lijst worden toegevoegd.
Als u deze parameter weglaat, New-ModuleManifest
maakt u een VariablesToExport-sleutel met de waarde *
(alle), wat betekent dat alle variabelen die in de module zijn gedefinieerd, door het manifest worden geëxporteerd.
Type: | String[] |
Position: | Named |
Default value: | * (all) |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | True |
-WhatIf
Toont wat er zou gebeuren als New-ModuleManifest
er wordt uitgevoerd. De cmdlet wordt niet uitgevoerd.
Type: | SwitchParameter |
Aliassen: | wi |
Position: | Named |
Default value: | False |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
Invoerwaarden
None
U kunt geen objecten doorsluisen naar deze cmdlet.
Uitvoerwaarden
None
Deze cmdlet retourneert standaard geen uitvoer.
Wanneer u de Parameter PassThru gebruikt, retourneert deze cmdlet een tekenreeks die het modulemanifest vertegenwoordigt.
Notities
New-ModuleManifest
met Windows- en niet-Windows-platformen worden modulemanifestbestanden (.psd1
) gemaakt die zijn gecodeerd als UTF8NoBOM.
Modulemanifesten zijn meestal optioneel. Er is echter een modulemanifest vereist voor het exporteren van een assembly die is geïnstalleerd in de globale assemblycache.
Als u bestanden in de $pshome\Modules
map wilt toevoegen of wijzigen, start u PowerShell met de optie Als administrator uitvoeren .
Notitie
Vanaf PowerShell 6.2 probeert PowerShell alle DLL-bestanden te laden die worden vermeld in de eigenschap FileList van het modulemanifest. Systeemeigen DLL's worden niet geladen in de FileList en de fout wordt genegeerd. Alle beheerde DLL's worden in het proces geladen. Dit gedrag is verwijderd in PowerShell 7.1.
In PowerShell 2.0 waren veel parameters New-ModuleManifest
verplicht, ook al waren ze niet vereist in een modulemanifest. Vanaf PowerShell 3.0 is alleen de padparameter verplicht.
Een sessie is een exemplaar van de PowerShell-uitvoeringsomgeving. Een sessie kan een of meer sessiestatussen hebben. Een sessie heeft standaard alleen een globale sessiestatus, maar elke geïmporteerde module heeft een eigen sessiestatus. Met sessiestatussen kunnen de opdrachten in een module worden uitgevoerd zonder dat dit van invloed is op de globale sessiestatus.
De sessiestatus van de aanroeper is de sessiestatus waarin een module wordt geïmporteerd. Normaal gesproken verwijst deze naar de globale sessiestatus, maar wanneer een module geneste modules importeert, is de aanroeper de module en is de sessiestatus van de aanroeper de sessiestatus van de module.