New-ModuleManifest
Hiermee maakt u een nieuw modulemanifest.
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
De New-ModuleManifest
cmdlet maakt een nieuw modulemanifestbestand (.psd1
), 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
hiermee maakt u een manifest dat alle veelgebruikte manifestsleutels bevat, zodat u de standaarduitvoer als manifestsjabloon kunt gebruiken. Als u waarden wilt toevoegen of wijzigen, of als u modulesleutels wilt toevoegen die deze cmdlet niet toevoegt, 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 sleutel ModuleVersion vereist. Tenzij opgegeven in de parameterbeschrijving, als u een parameter weglaat uit de opdracht, New-ModuleManifest
maakt een opmerkingtekenreeks voor de bijbehorende waarde die geen effect heeft.
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 er geen vereiste parameterwaarden zijn opgegeven.
Als u van plan bent om de module te publiceren in de PowerShell Gallery, moet het manifest waarden voor bepaalde eigenschappen bevatten. Zie Vereiste metagegevens voor items die zijn gepubliceerd naar de PowerShell Gallery in de galeriedocumentatie voor meer informatie.
Voorbeelden
Voorbeeld 1: een nieuw modulemanifest Creatie
In dit voorbeeld wordt een nieuw modulemanifest gemaakt in het bestand dat is opgegeven met de parameter Path . De parameter PassThru 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 Creatie met enkele vooraf ingevulde instellingen
In dit voorbeeld wordt een nieuw modulemanifest gemaakt. De parameters PowerShellVersion en AliasesToExport worden gebruikt om waarden toe te voegen aan de bijbehorende manifestsleutels.
New-ModuleManifest -PowerShellVersion 1.0 -AliasesToExport JKBC, DRC, TAC -Path C:\ps-test\ManifestTest.psd1
Voorbeeld 3: een manifest Creatie 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 hash-tabellen combineren in dezelfde parameterwaarde.
Voorbeeld 4: een manifest Creatie 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 geeft aan waar het Help-systeem dat kan worden bijgewerkt, het help-informatiebestand met helpgegevens dat kan worden bijgewerkt, kan worden gevonden.
$moduleSettings = @{
HelpInfoUri = 'http://https://go.microsoft.com/fwlink/?LinkID=603'
Path = 'C:\ps-test\ManifestTest.psd1'
}
New-ModuleManifest @moduleSettings
Zie about_Updatable_Help voor meer informatie over help die kan worden bijgewerkt. Zie Ondersteuning voor bijwerkbare Help voor informatie over het XML-bestand 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. Aliassen kunnen 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, worden geëxporteerd door het manifest.
Type: | String[] |
Position: | Named |
Default value: | * (all) |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Author
Hiermee geeft u de auteur van de module.
Als u deze parameter weglaat, New-ModuleManifest
maakt u een auteursleutel met de naam van de huidige gebruiker.
Type: | String |
Position: | Named |
Default value: | Name of the current user |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ClrVersion
Hiermee geeft u de minimale versie van de Common Language Runtime (CLR) van de Microsoft .NET Framework die voor de module is vereist.
Type: | Version |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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. Cmdlets kunnen worden verwijderd uit de lijst met geëxporteerde cmdlets, maar er kunnen geen cmdlets aan de lijst worden toegevoegd.
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, worden geëxporteerd door het manifest.
Type: | String[] |
Position: | Named |
Default value: | * (all) |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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" |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CompatiblePSEditions
Hiermee geeft u de compatibele PSEditions van de module op. Zie Modules met compatibele PowerShell-edities voor meer informatie over PSEdition.
Type: | String[] |
Accepted values: | Desktop, Core |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Hiermee wordt u gevraagd om bevestiging voordat u de cmdlet uitvoert.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Copyright
Hiermee geeft u een copyright-instructie voor de module.
Als u deze parameter weglaat, New-ModuleManifest
maakt u een copyrightsleutel met de waarde (c) <year> <username>. All rights reserved.
waar <year>
het huidige jaar is en <username>
de waarde van de sleutel Auteur .
Type: | String |
Position: | Named |
Default value: | (c) <year> <username>. All rights reserved. |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DefaultCommandPrefix
Hiermee geeft u een voorvoegsel op dat wordt voorafgegaan aan de zelfstandige naamwoorden van alle opdrachten in de module wanneer ze worden geïmporteerd in een sessie. Voer een tekenreeks voor het voorvoegsel in. Voorvoegsels voorkomen dat opdrachtnaamconflicten 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 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Description
Beschrijft de inhoud van de module.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DotNetFrameworkVersion
Hiermee geeft u de minimale versie van de Microsoft .NET Framework die de module vereist.
Type: | Version |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DscResourcesToExport
Hiermee geeft u de Desired State Configuration (DSC) resources die de module exporteert. Jokertekens zijn toegestaan.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-ExternalModuleDependencies
Een lijst met externe modules waarvan deze module is afhankelijk.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FileList
Hiermee geeft u alle items 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 eventuele functies worden niet automatisch geëxporteerd.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FormatsToProcess
Hiermee geeft u de opmaakbestanden (.ps1xml
) op die worden uitgevoerd wanneer de module wordt geïmporteerd.
Wanneer u een module importeert, wordt de Update-FormatData
cmdlet met de opgegeven bestanden uitgevoerd.
Omdat opmaakbestanden niet binnen het bereik vallen, zijn ze van invloed op alle sessiestatussen in de sessie.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FunctionsToExport
Hiermee geeft u de functies op die de module exporteert. Jokertekens zijn toegestaan.
U kunt deze parameter gebruiken om de functies te beperken die door de module worden geëxporteerd. Functies kunnen worden verwijderd 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, worden geëxporteerd door het manifest.
Type: | String[] |
Position: | Named |
Default value: | * (all) |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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 in PowerShell wilt maken, typt u [guid]::NewGuid()
.
Type: | Guid |
Position: | Named |
Default value: | A GUID generated for the module |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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 functie Updatable Help 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 meer informatie over help die kan worden bijgewerkt. Zie Ondersteuning voor bijwerkbare Help voor meer informatie over het XML-bestand Helpinfo.
Deze parameter is geïntroduceerd in PowerShell 3.0.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IconUri
Hiermee geeft u de URL van een pictogram voor de module. Het opgegeven pictogram wordt weergegeven op de webpagina van de galerie voor de module.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-LicenseUri
Hiermee geeft u de URL van licentievoorwaarden voor de module op.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ModuleList
Lijsten alle modules die in deze module zijn opgenomen.
Voer elke modulenaam in als een tekenreeks of als een hashtabel met de sleutels ModuleName en ModuleVersion . 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 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ModuleVersion
Hiermee geeft u de versie van de module op.
Deze parameter is niet vereist, maar een ModuleVersion-sleutel is 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 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NestedModules
Hiermee geeft u scriptmodules (.psm1
) en binaire modules (.dll
) op die worden geïmporteerd in de sessiestatus van de module. 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 hashtabel met de sleutels ModuleName en ModuleVersion . De hashtabel kan ook een optionele GUID-sleutel hebben. U kunt tekenreeksen en hashtabellen combineren in de parameterwaarde.
Doorgaans bevatten geneste modules 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 ze 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 wilt uitvoeren in de sessiestatus van de aanroeper, vermeldt u de naam van het scriptbestand in de waarde van de sleutel ScriptsToProcess in het manifest.
Type: | Object[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PassThru
Schrijft het resulterende modulemanifest naar de console en maakt een .psd1
bestand. Met deze cmdlet wordt standaard geen uitvoer gegenereerd.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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 path-parameter is vereist.
Als u het pad naar een bestaand bestand opgeeft, New-ModuleManifest
vervangt u het bestand zonder waarschuwing, tenzij het bestand het kenmerk Alleen-lezen heeft.
Het manifest moet zich in de map van de module bevinden en de bestandsnaam van het manifest moet hetzelfde zijn als de naam van de modulemap, maar met een .psd1
bestandsnaamextensie.
Notitie
U kunt variabelen, zoals $PSHOME
of $HOME
, niet gebruiken 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 |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PowerShellHostName
Hiermee geeft u de naam op van het PowerShell-hostprogramma dat voor de module is vereist. Voer de naam van het hostprogramma in, 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 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PowerShellHostVersion
Hiermee geeft u de minimale versie van het PowerShell-hostprogramma op dat met de module werkt. Voer een versienummer in, bijvoorbeeld 1.1.
Type: | Version |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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 naar de PowerShell Gallery wordt gepubliceerd, 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
, Update-Module
en Save-Module
.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ProcessorArchitecture
Hiermee geeft u de processorarchitectuur op die voor de module nodig is. Geldige waarden zijn x86, AMD64, IA64, MSIL en Geen (onbekend of niet opgegeven).
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
Hiermee geeft u de URL van een webpagina over dit project.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ReleaseNotes
Hiermee geeft u releaseopmerkingen op.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RequiredAssemblies
Hiermee geeft u de assemblybestanden (.dll
) op die voor de module nodig zijn. Voer de namen van het assemblybestand 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 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RequiredModules
Hiermee geeft u modules op die de globale sessiestatus moeten hebben. Als de vereiste modules niet de globale sessiestatus hebben, worden ze 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 hashtabel met de sleutels ModuleName en ModuleVersion . 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 vereiste modules niet automatisch geïmporteerd. Er wordt alleen gecontroleerd of de vereiste modules de globale sessiestatus hebben.
Type: | Object[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RequireLicenseAcceptance
Vlag om aan te geven of de module expliciete gebruikersacceptatie vereist voor installatie, update of opslaan.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RootModule
Hiermee geeft u het primaire of hoofdbestand van de module. Voer de bestandsnaam in van een script (.ps1
), een scriptmodule (.psm1
), een modulemanifest(.psd1
), een assembly (.dll
), een CMDLET-definitie-XML-bestand (.cdxml
) of een werkstroom (.xaml
). Wanneer de module wordt geïmporteerd, worden de leden die worden geëxporteerd uit het hoofdmodulebestand 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 heette deze sleutel ModuleToProcess. U kunt de parameternaam RootModule of de bijbehorende ModuleToProcess-alias gebruiken.
Type: | String |
Aliases: | ModuleToProcess |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ScriptsToProcess
Hiermee geeft u scriptbestanden (.ps1
) op 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 zou kunnen 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 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Tags
Hiermee geeft u een matrix van tags.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TypesToProcess
Hiermee geeft u het type bestanden (.ps1xml
) die worden uitgevoerd wanneer de module wordt geïmporteerd.
Wanneer u de module importeert, wordt de Update-TypeData
cmdlet met de opgegeven bestanden uitgevoerd.
Omdat typebestanden niet binnen het bereik vallen, zijn ze van invloed op alle sessiestatussen in de sessie.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VariablesToExport
Hiermee geeft u de variabelen op die de module exporteert. 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, worden geëxporteerd door het manifest.
Type: | String[] |
Position: | Named |
Default value: | * (all) |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-WhatIf
Laat zien wat er zou gebeuren als New-ModuleManifest
wordt uitgevoerd. De cmdlet wordt niet uitgevoerd.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Invoerwaarden
None
U kunt geen invoer doorspezen naar deze cmdlet.
Uitvoerwaarden
None or System.String
Genereert standaard New-ModuleManifest
geen uitvoer. Als u echter de parameter PassThru gebruikt, wordt er een System.String-object gegenereerd dat het modulemanifest vertegenwoordigt.
Notities
New-ModuleManifest
met windows- en niet-Windows-platforms maakt u modulemanifestbestanden (.psd1
) 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 assembly-cache.
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 in de FileList kunnen niet worden geladen in het proces 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 van New-ModuleManifest
verplicht, ook al waren ze niet vereist in een modulemanifest. Vanaf PowerShell 3.0 is alleen de path-parameter verplicht.
Een sessie is een exemplaar van de PowerShell-uitvoeringsomgeving. Een sessie kan een of meer sessiestatussen hebben. Standaard heeft een sessie 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 dit 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.