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
), 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 Pad en PassThru-, maakt een module-manifestsleutel en de bijbehorende waarde.
In een modulemanifest is alleen de ModuleVersion--sleutel vereist. Tenzij anders vermeld in de parameterbeschrijving, als je een parameter weglaat uit de opdracht, maakt New-ModuleManifest
een commentaarstring aan voor de bijbehorende waarde die geen operationeel effect heeft.
In PowerShell 2.0 vraagt New-ModuleManifest
u om de waarden van veelgebruikte parameters die niet zijn opgegeven in de opdracht, naast de vereiste parameterwaarden. Vanaf PowerShell 3.0 wordt New-ModuleManifest
alleen gevraagd wanneer vereiste parameterwaarden niet worden 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 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 maken met een aantal vooraf ingevulde instellingen
In dit voorbeeld wordt een nieuw modulemanifest gemaakt. Het maakt gebruik van de PowerShellVersion en AliasesToExport parameters 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 module BitsTransfer en de hash-tabelindeling 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 indelingen van tekenreeksen en hashtabellen gebruikt voor de parameters ModuleList, RequiredModulesen NestedModules. 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 geeft aan waar het systeem Updatable Help het HelpInfo XML-bijwerkbare informatiebestand voor de module kan vinden.
$moduleSettings = @{
HelpInfoUri = 'http://https://go.microsoft.com/fwlink/?LinkID=603'
Path = 'C:\ps-test\ManifestTest.psd1'
}
New-ModuleManifest @moduleSettings
Zie about_Updatable_Helpvoor meer informatie over Help die kan worden bijgewerkt. Zie Ondersteuning voor bijwerkbare helpvoor meer informatie over het HelpInfo XML-bestand.
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, maakt New-ModuleManifest
een AliasesToExport sleutel met een waarde van *
(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, maakt New-ModuleManifest
een Author-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, maakt New-ModuleManifest
een CmdletsToExport sleutel met een waarde van *
(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, maakt New-ModuleManifest
een CompanyName--sleutel met de waarde Onbekend.
Type: | String |
Position: | Named |
Default value: | "Unknown" |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-CompatiblePSEditions
Geeft de compatibele PSEditions van de module aan. Zie Modules met compatibele PowerShell-editiesvoor meer informatie over PSEdition.
Type: | String[] |
Geaccepteerde waarden: | Desktop, Core |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Confirm
Vraagt om bevestiging voordat de cmdlet wordt uitgevoerd.
Type: | SwitchParameter |
Aliassen: | cf |
Position: | Named |
Default value: | False |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Copyright
Hiermee specificeert u een copyrightverklaring voor de module.
Als u deze parameter weglaat, maakt New-ModuleManifest
een sleutel Copyright met een waarde van (c) <year> <username>. All rights reserved.
waarbij <year>
het huidige jaar is en <username>
de waarde is van de Author-sleutel.
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 toegevoegd aan de zelfstandige naamwoorden van alle opdrachten in de module wanneer ze in een sessie worden geïmporteerd. Voer een voorvoegselreeks 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 beperkt zijn, hebben ze invloed op alle sessiestanden 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, maakt New-ModuleManifest
een FunctionsToExport-sleutel met een waarde van *
(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, maakt New-ModuleManifest
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 |
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_Helpvoor meer informatie over Help die kan worden bijgewerkt. Zie Ondersteuning voor bijwerkbare helpvoor meer informatie over het HelpInfo XML-bestand.
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, maakt New-ModuleManifest
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 in de waardelijst zijn vermeld.
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. Gebruik bijvoorbeeld 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 NestedModules-sleutel 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 ScriptsToProcess sleutel 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 parameter Path is verplicht.
Als u het pad naar een bestaand bestand opgeeft, vervangt New-ModuleManifest
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 naam van het manifestbestand moet hetzelfde zijn als de naam van de modulemap, maar met een .psd1
bestandsnaamextensie.
Notitie
U kunt geen variabelen, zoals $PSHOME
of $HOME
, gebruiken als reactie op een prompt voor een pad parameterwaarde. 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 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 u $Host.Name
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 5
verzendt, genereert PowerShell een fout.
Type: | Version |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Prerelease
Prerelease-tekstreeks 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 met de PowerShellGet-opdrachten Find-Module
, Install-Module
, Update-Module
en Save-Module
gebruiken.
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 vereist, inclusief assembly's die moeten worden geladen om opmaak- of typebestanden bij te werken die worden vermeld in de FormatsToProcess of TypesToProcess sleutels, zelfs als deze assembly's ook worden vermeld als binaire modules in de sleutel NestedModules sleutel.
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 opdracht Import-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.
In PowerShell 2.0 importeert Import-Module
niet automatisch vereiste modules. Er wordt alleen gecontroleerd of de vereiste modules in de globale sessie aanwezig zijn.
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
Geeft het primaire of hoofdbestand van de module op. Voer de bestandsnaam in van een script (.ps1
), een scriptmodule (.psm1
), een modulemanifest(.psd1
), een assembly (.dll
), een XML-bestand (.cdxml
) of een werkstroom (.xaml
). 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 RootModule- of NestedModules sleutels in het manifest. Anders worden hun leden niet geëxporteerd.
Notitie
In PowerShell 2.0 werd deze sleutel ModuleToProcessgenoemd. U kunt de RootModule parameternaam 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 (.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 kunt gebruiken.
Als u scripts wilt opgeven die worden uitgevoerd in de sessiestatus van de module, gebruikt u de NestedModules-sleutel.
Type: | String[] |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Tags
Hiermee specificeert u een reeks van tags.
Type: | String[] |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-TypesToProcess
Hiermee geeft u het type bestanden (.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 specifiek afgebakend zijn, hebben ze invloed op alle sessiestatussen.
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, maakt New-ModuleManifest
een VariablesToExport sleutel met een waarde van *
(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
Laat zien wat er zou gebeuren als New-ModuleManifest
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
die worden uitgevoerd op Windows- en niet-Windows-platforms creëren 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 assemblycache.
Als u bestanden wilt toevoegen aan of wijzigen in de $pshome\Modules
map, start u PowerShell met de Als administrator uitvoeren optie.
Notitie
Vanaf PowerShell 6.2 probeert PowerShell alle DLL-bestanden te laden die worden vermeld in FileList eigenschap van het modulemanifest. Systeemeigen DLL's in de FileList worden niet 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 parameter Path 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.