New-ModuleManifest
Cria um novo manifesto de módulo.
Sintaxe
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
O New-ModuleManifest
cmdlet cria um novo arquivo de manifesto do módulo (.psd1
), preenche seus valores e salva o arquivo de manifesto no caminho especificado.
Os autores do módulo podem usar esse cmdlet para criar um manifesto para o módulo. Um manifesto de módulo é um ficheiro .psd1
que contém uma tabela hash. As chaves e os valores na tabela hash descrevem o conteúdo e atributos do módulo, definem os pré-requisitos e determinam como os componentes são processados. Os manifestos não são necessários para um módulo.
New-ModuleManifest
Cria um manifesto que inclui todas as chaves de manifesto comumente usadas, para que você possa usar a saída padrão como um modelo de manifesto. Para adicionar ou alterar valores, ou para adicionar chaves de módulo que este cmdlet não adiciona, abra o arquivo resultante em um editor de texto.
Cada parâmetro, exceto Path e PassThru, cria uma chave de manifesto do módulo e seu valor.
Em um manifesto de módulo, somente a chave ModuleVersion é necessária. A menos que especificado na descrição do parâmetro, se você omitir um parâmetro do comando, New-ModuleManifest
criará uma cadeia de caracteres de comentário para o valor associado que não terá efeito.
No PowerShell 2.0, New-ModuleManifest
solicita os valores dos parâmetros comumente usados que não são especificados no comando, além dos valores de parâmetro necessários. A partir do PowerShell 3.0, New-ModuleManifest
solicita somente quando os valores de parâmetro necessários não são especificados.
Se você estiver planejando publicar seu módulo na Galeria do PowerShell, o manifesto deverá conter valores para determinadas propriedades. Para obter mais informações, consulte Metadados necessários para itens publicados na Galeria do PowerShell na documentação da Galeria.
Exemplos
Exemplo 1 - Criar um novo manifesto de módulo
Este exemplo cria um novo manifesto de módulo no arquivo especificado pelo parâmetro Path . O parâmetro PassThru envia a saída para o pipeline e para o arquivo.
A saída mostra os valores padrão de todas as chaves no manifesto.
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 = ''
}
Exemplo 2 - Criar um novo manifesto com algumas configurações pré-preenchidas
Este exemplo cria um novo manifesto de módulo. Ele usa os parâmetros PowerShellVersion e AliasesToExport para adicionar valores às chaves de manifesto correspondentes.
$moduleSettings = @{
PowerShellVersion = 1.0
Path = 'C:\ps-test\ManifestTest.psd1'
AliasesToExport = @(
'JKBC'
'DRC'
'TAC'
)
}
New-ModuleManifest @moduleSettings
Exemplo 3 - Criar um manifesto que requer outros módulos
Este exemplo utiliza um formato de cadeia para especificar o nome do módulo BitsTransfer e o formato da tabela hash para especificar o nome, um GUID e uma versão do módulo PSScheduledJob.
$moduleSettings = @{
RequiredModules = ("BitsTransfer", @{
ModuleName="PSScheduledJob"
ModuleVersion="1.0.0.0";
GUID="50cdb55f-5ab7-489f-9e94-4ec21ff51e59"
})
Path = 'C:\ps-test\ManifestTest.psd1'
}
New-ModuleManifest @moduleSettings
Este exemplo mostra como utilizar os formatos de cadeia e tabela hash dos parâmetros ModuleList, RequiredModules e NestedModules. Pode combinar cadeias e tabelas hash no mesmo valor do parâmetro.
Exemplo 4 - Criar um manifesto que suporte ajuda atualizável
Este exemplo usa o parâmetro HelpInfoUri para criar uma chave HelpInfoUri no manifesto do módulo. O valor do parâmetro e da chave deve começar com http ou https. Esse valor informa ao sistema de Ajuda atualizável onde encontrar o arquivo de informações de ajuda atualizável XML HelpInfo para o módulo.
$moduleSettings = @{
HelpInfoUri = 'http://https://go.microsoft.com/fwlink/?LinkID=603'
Path = 'C:\ps-test\ManifestTest.psd1'
}
New-ModuleManifest @moduleSettings
Para obter informações sobre a Ajuda atualizável, consulte about_Updatable_Help. Para obter informações sobre o arquivo XML HelpInfo, consulte Supporting Updatable Help.
Exemplo 5 - Obter informações do módulo
Este exemplo mostra como obter os valores de configuração de um módulo. Os valores no manifesto do módulo são refletidos nos valores das propriedades do objeto do módulo.
O Get-Module
cmdlet é usado para obter o módulo Microsoft.PowerShell.Diagnostics usando o parâmetro List . O comando envia o módulo para o Format-List
cmdlet para exibir todas as propriedades e valores do objeto module.
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}
Parâmetros
-AliasesToExport
Especifica os aliases que o módulo exporta. Curingas são permitidos.
Você pode usar esse parâmetro para restringir os aliases que são exportados pelo módulo. Ele pode remover aliases da lista de aliases exportados, mas não pode adicionar aliases à lista.
Se você omitir esse parâmetro, New-ModuleManifest
criará uma chave AliasesToExport com um valor de *
(all), o que significa que todos os aliases definidos no módulo são exportados pelo manifesto.
Tipo: | String[] |
Position: | Named |
Default value: | * (all) |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | True |
-Author
Especifica o autor do módulo.
Se você omitir esse parâmetro, New-ModuleManifest
criará uma chave Author com o nome do usuário atual.
Tipo: | String |
Position: | Named |
Default value: | Name of the current user |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-ClrVersion
Especifica a versão mínima do Common Language Runtime (CLR) do Microsoft .NET Framework que o módulo requer.
Nota
Essa configuração é válida apenas para a edição PowerShell Desktop, como o Windows PowerShell 5.1, e só se aplica a versões do .NET Framework inferiores a 4.5. Esse requisito não tem efeito para versões mais recentes do PowerShell ou do .NET Framework.
Tipo: | Version |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-CmdletsToExport
Especifica os cmdlets que o módulo exporta. Curingas são permitidos.
Você pode usar esse parâmetro para restringir os cmdlets que são exportados pelo módulo. Ele pode remover cmdlets da lista de cmdlets exportados, mas não pode adicionar cmdlets à lista.
Se você omitir esse parâmetro, New-ModuleManifest
criará uma chave CmdletsToExport com um valor de *
(all), o que significa que todos os cmdlets definidos no módulo serão exportados pelo manifesto.
Tipo: | String[] |
Position: | Named |
Default value: | * (all) |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | True |
-CompanyName
Identifica a empresa ou fornecedor que criou o módulo.
Se você omitir esse parâmetro, New-ModuleManifest
criará uma chave CompanyName com um valor de "Unknown".
Tipo: | String |
Position: | Named |
Default value: | "Unknown" |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-CompatiblePSEditions
Especifica as PSEdições compatíveis do módulo. Para obter informações sobre PSEdition, consulte Módulos com edições compatíveis do PowerShell.
Tipo: | String[] |
Valores aceites: | Desktop, Core |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-Confirm
Solicita a sua confirmação antes de executar o cmdlet.
Tipo: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-Copyright
Especifica uma declaração de direitos autorais para o módulo.
Se você omitir esse parâmetro, New-ModuleManifest
criará uma chave Copyright com um valor de (c) <year> <username>. All rights reserved.
onde <year>
é o ano atual e <username>
é o valor da chave Autor .
Tipo: | String |
Position: | Named |
Default value: | (c) <year> <username>. All rights reserved. |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-DefaultCommandPrefix
Especifica um prefixo que é precedido dos substantivos de todos os comandos no módulo quando eles são importados para uma sessão. Insira uma cadeia de caracteres de prefixo. Os prefixos evitam conflitos de nome de comando na sessão de um usuário.
Os usuários do módulo podem substituir esse prefixo especificando o parâmetro Prefix do Import-Module
cmdlet.
Esse parâmetro foi introduzido no PowerShell 3.0.
Tipo: | String |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-Description
Descreve o conteúdo do módulo.
Tipo: | String |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-DotNetFrameworkVersion
Especifica a versão mínima do Microsoft .NET Framework que o módulo requer.
Nota
Essa configuração é válida apenas para a edição PowerShell Desktop, como o Windows PowerShell 5.1, e só se aplica a versões do .NET Framework inferiores a 4.5. Esse requisito não tem efeito para versões mais recentes do PowerShell ou do .NET Framework.
Tipo: | Version |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-DscResourcesToExport
Especifica os recursos de Configuração de Estado Desejado (DSC) que o módulo exporta. Curingas são permitidos.
Tipo: | String[] |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | True |
-ExternalModuleDependencies
Uma lista de módulos externos dos quais este módulo é depende.
Tipo: | String[] |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-FileList
Especifica todos os itens incluídos no módulo.
Essa chave foi projetada para funcionar como um inventário de módulos. Os arquivos listados na chave são incluídos quando o módulo é publicado, mas nenhuma função é exportada automaticamente.
Tipo: | String[] |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-FormatsToProcess
Especifica os arquivos de formatação (.ps1xml
) que são executados quando o módulo é importado.
Quando você importa um módulo, o PowerShell executa o Update-FormatData
cmdlet com os arquivos especificados.
Como os arquivos de formatação não têm escopo, eles afetam todos os estados da sessão na sessão.
Tipo: | String[] |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-FunctionsToExport
Especifica as funções que o módulo exporta. Curingas são permitidos.
Você pode usar esse parâmetro para restringir as funções que são exportadas pelo módulo. Ele pode remover funções da lista de aliases exportados, mas não pode adicionar funções à lista.
Se você omitir esse parâmetro, New-ModuleManifest
criará uma chave FunctionsToExport com um valor de *
(all), o que significa que todas as funções definidas no módulo são exportadas pelo manifesto.
Tipo: | String[] |
Position: | Named |
Default value: | * (all) |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | True |
-Guid
Especifica um identificador exclusivo para o módulo. O GUID pode ser usado para distinguir entre módulos com o mesmo nome.
Se você omitir esse parâmetro, New-ModuleManifest
criará uma chave GUID no manifesto e gerará um GUID para o valor.
Para criar um novo GUID no PowerShell, digite [guid]::NewGuid()
.
Tipo: | Guid |
Position: | Named |
Default value: | A GUID generated for the module |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-HelpInfoUri
Especifica o endereço da Internet do arquivo XML HelpInfo para o módulo. Insira um URI (Uniform Resource Identifier) que comece com http ou https.
O arquivo XML HelpInfo oferece suporte ao recurso Ajuda atualizável que foi introduzido no PowerShell 3.0. Ele contém informações sobre o local dos arquivos de ajuda para download para o módulo e os números de versão dos arquivos de ajuda mais recentes para cada localidade suportada.
Para obter informações sobre a Ajuda atualizável, consulte about_Updatable_Help. Para obter informações sobre o arquivo XML HelpInfo, consulte Supporting Updatable Help.
Esse parâmetro foi introduzido no PowerShell 3.0.
Tipo: | String |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-IconUri
Especifica a URL de um ícone para o módulo. O ícone especificado é exibido na página da Web da galeria para o módulo.
Tipo: | Uri |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-LicenseUri
Especifica a URL dos termos de licenciamento para o módulo.
Tipo: | Uri |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-ModuleList
Lista todos os módulos incluídos neste módulo.
Introduza o nome de cada módulo como uma cadeia ou como uma tabela hash com as chaves ModuleName e ModuleVersion. A tabela hash também pode ter uma chave GUID opcional. Pode combinar cadeias e tabelas hash no valor do parâmetro.
Essa chave foi projetada para funcionar como um inventário de módulos. Os módulos listados no valor dessa chave não são processados automaticamente.
Tipo: | Object[] |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-ModuleVersion
Especifica a versão do módulo.
Este parâmetro não é necessário, mas uma chave ModuleVersion é necessária no manifesto. Se você omitir esse parâmetro, New-ModuleManifest
criará uma chave ModuleVersion com um valor de 1.0.
Tipo: | Version |
Position: | Named |
Default value: | 1.0 |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-NestedModules
Especifica módulos de script (.psm1
) e módulos binários (.dll
) que são importados para o estado de sessão do módulo. Os arquivos na chave NestedModules são executados na ordem em que são listados no valor.
Introduza o nome de cada módulo como uma cadeia ou como uma tabela hash com as chaves ModuleName e ModuleVersion. A tabela hash também pode ter uma chave GUID opcional. Pode combinar cadeias e tabelas hash no valor do parâmetro.
Normalmente, os módulos aninhados contêm comandos que o módulo raiz precisa para seu processamento interno.
Por padrão, os comandos em módulos aninhados são exportados do estado de sessão do módulo para o estado de sessão do chamador, mas o módulo raiz pode restringir os comandos que exporta. Por exemplo, usando um Export-ModuleMember
comando.
Os módulos aninhados no estado da sessão do módulo estão disponíveis para o módulo raiz, mas não são retornados por um Get-Module
comando no estado da sessão do chamador.
Os scripts (.ps1
) listados na chave NestedModules são executados no estado da sessão do módulo, não no estado da sessão do chamador. Para executar um script no estado de sessão do chamador, liste o nome do arquivo de script no valor da chave ScriptsToProcess no manifesto.
Tipo: | Object[] |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-PassThru
Grava o manifesto do módulo resultante no console e cria um .psd1
arquivo. Por padrão, esse cmdlet não gera nenhuma saída.
Tipo: | SwitchParameter |
Position: | Named |
Default value: | False |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-Path
Especifica o caminho e o nome do arquivo do novo manifesto do módulo. Insira um caminho e um nome de arquivo com uma extensão de nome de .psd1
arquivo, como $pshome\Modules\MyModule\MyModule.psd1
. O parâmetro Path é obrigatório.
Se você especificar o caminho para um arquivo existente, substituirá o arquivo sem aviso, New-ModuleManifest
a menos que o arquivo tenha o atributo somente leitura.
O manifesto deve estar localizado no diretório do módulo, e o nome do arquivo de manifesto deve ser o mesmo que o nome do diretório do módulo, mas com uma extensão de nome de .psd1
arquivo.
Nota
Não é possível usar variáveis, como $PSHOME
ou $HOME
, em resposta a um prompt para um valor de parâmetro Path . Para usar uma variável, inclua o parâmetro Path no comando.
Tipo: | String |
Position: | 1 |
Default value: | None |
Necessário: | True |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-PowerShellHostName
Especifica o nome do programa host do PowerShell que o módulo requer. Digite o nome do programa host, como Windows PowerShell ISE Host ou ConsoleHost. Curingas não são permitidos.
Para localizar o nome de um programa host, no programa, digite $Host.Name
.
Tipo: | String |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-PowerShellHostVersion
Especifica a versão mínima do programa host do PowerShell que funciona com o módulo. Insira um número de versão, como 1.1.
Tipo: | Version |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-PowerShellVersion
Especifica a versão mínima do PowerShell que funciona com este módulo. Por exemplo, você pode inserir 1.0, 2.0 ou 3.0 como o valor do parâmetro. Ele deve estar em um formato X.X. Por exemplo, se você enviar 5
o , o PowerShell lançará um erro.
Tipo: | Version |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-Prerelease
String de pré-lançamento deste módulo. Adicionar uma cadeia de caracteres de pré-lançamento identifica o módulo como uma versão de pré-lançamento. Quando o módulo é publicado na Galeria do PowerShell, esses dados são usados para identificar pacotes de pré-lançamento. Para adquirir pacotes de pré-lançamento da Galeria, você deve usar o parâmetro AllowPrerelease com os comandos Find-Module
PowerShellGet , Install-Module
, Update-Module
e Save-Module
.
Tipo: | String |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-PrivateData
Especifica os dados que são passados para o módulo quando ele é importado.
Tipo: | Object |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-ProcessorArchitecture
Especifica a arquitetura do processador que o módulo requer. Os valores válidos são x86, AMD64, IA64, MSIL e Nenhum (desconhecido ou não especificado).
Tipo: | ProcessorArchitecture |
Valores aceites: | None, MSIL, X86, IA64, Amd64, Arm |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-ProjectUri
Especifica a URL de uma página da Web sobre este projeto.
Tipo: | Uri |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-ReleaseNotes
Especifica as notas de versão.
Tipo: | String |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-RequiredAssemblies
Especifica os arquivos de assembly (.dll
) que o módulo requer. Insira os nomes dos arquivos de assembly.
O PowerShell carrega os assemblies especificados antes de atualizar tipos ou formatos, importar módulos aninhados ou importar o arquivo de módulo especificado no valor da chave RootModule .
Use esse parâmetro para listar todos os assemblies que o módulo exige, incluindo assemblies que devem ser carregados para atualizar qualquer formatação ou arquivos de tipo listados nas chaves FormatsToProcess ou TypesToProcess , mesmo que esses assemblies também estejam listados como módulos binários na chave NestedModules .
Tipo: | String[] |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-RequiredModules
Especifica os módulos que devem estar no estado da sessão global. Se os módulos necessários não estiverem no estado da sessão global, o PowerShell os importa. Se os módulos necessários não estiverem disponíveis, o Import-Module
comando falhará.
Introduza o nome de cada módulo como uma cadeia ou como uma tabela hash com as chaves ModuleName e ModuleVersion. A tabela hash também pode ter uma chave GUID opcional. Pode combinar cadeias e tabelas hash no valor do parâmetro.
No PowerShell 2.0, Import-Module
não importa os módulos necessários automaticamente. Ele apenas verifica se os módulos necessários estão no estado de sessão global.
Tipo: | Object[] |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-RequireLicenseAcceptance
Sinalizador para indicar se o módulo requer aceitação explícita do usuário para instalar, atualizar ou salvar.
Tipo: | SwitchParameter |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-RootModule
Especifica o arquivo primário ou raiz do módulo. Insira o nome de arquivo de um script (.ps1
), um módulo de script (.psm1
), um manifesto de módulo(.psd1
), um assembly (.dll
), um arquivo XML de definição de cmdlet (.cdxml
) ou um fluxo de trabalho (.xaml
). Quando o módulo é importado, os membros que são exportados do arquivo de módulo raiz são importados para o estado de sessão do chamador.
Se um módulo tiver um arquivo de manifesto e nenhum arquivo raiz tiver sido designado na chave RootModule , o manifesto se tornará o arquivo primário para o módulo e o módulo se tornará um módulo de manifesto (ModuleType = Manifest).
Para exportar membros .psm1
ou .dll
arquivos em um módulo que tenha um manifesto, os nomes desses arquivos devem ser especificados nos valores das chaves RootModule ou NestedModules no manifesto. Caso contrário, seus membros não serão exportados.
Nota
No PowerShell 2.0, essa chave era chamada ModuleToProcess. Você pode usar o nome do parâmetro RootModule ou seu alias ModuleToProcess .
Tipo: | String |
Aliases: | ModuleToProcess |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-ScriptsToProcess
Especifica os arquivos de script (.ps1
) que são executados no estado da sessão do chamador quando o módulo é importado.
Você pode usar esses scripts para preparar um ambiente, assim como você pode usar um script de login.
Para especificar scripts que são executados no estado de sessão do módulo, use a chave NestedModules .
Tipo: | String[] |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-Tags
Especifica uma matriz de tags.
Tipo: | String[] |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-TypesToProcess
Especifica os arquivos de tipo (.ps1xml
) que são executados quando o módulo é importado.
Quando você importa o módulo, o PowerShell executa o Update-TypeData
cmdlet com os arquivos especificados.
Como os arquivos de tipo não têm escopo, eles afetam todos os estados da sessão na sessão.
Tipo: | String[] |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-VariablesToExport
Especifica as variáveis que o módulo exporta. Curingas são permitidos.
Você pode usar esse parâmetro para restringir as variáveis que são exportadas pelo módulo. Ele pode remover variáveis da lista de variáveis exportadas, mas não pode adicionar variáveis à lista.
Se você omitir esse parâmetro, New-ModuleManifest
criará uma chave VariablesToExport com um valor de *
(all), o que significa que todas as variáveis definidas no módulo são exportadas pelo manifesto.
Tipo: | String[] |
Position: | Named |
Default value: | * (all) |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | True |
-WhatIf
Mostra o que aconteceria se New-ModuleManifest
fosse executado. O cmdlet não é executado.
Tipo: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
Entradas
None
Não é possível canalizar objetos para este cmdlet.
Saídas
None
Por padrão, esse cmdlet não retorna nenhuma saída.
Quando você usa o parâmetro PassThru , esse cmdlet retorna uma cadeia de caracteres que representa o manifesto do módulo.
Notas
New-ModuleManifest
em execução em plataformas Windows e não-Windows cria arquivos de manifesto do módulo (.psd1
) codificados como UTF8NoBOM.
Os manifestos do módulo são geralmente opcionais. No entanto, um manifesto de módulo é necessário para exportar um assembly que está instalado no cache de assembly global.
Para adicionar ou alterar arquivos no diretório, inicie o $pshome\Modules
PowerShell com a opção Executar como administrador .
Nota
A partir do PowerShell 6.2, o PowerShell tenta carregar todos os arquivos DLL listados na propriedade FileList do manifesto do módulo. DLLs nativas está na FileList falha ao carregar no processo e o erro é ignorado. Todas as DLLs gerenciadas são carregadas no processo. Esse comportamento foi removido no PowerShell 7.1.
No PowerShell 2.0, muitos parâmetros de eram obrigatórios, mesmo que não fossem exigidos em um manifesto de New-ModuleManifest
módulo. A partir do PowerShell 3.0, apenas o parâmetro Path é obrigatório.
Uma sessão é uma instância do ambiente de execução do PowerShell. Uma sessão pode ter um ou mais estados de sessão. Por padrão, uma sessão tem apenas um estado de sessão global, mas cada módulo importado tem seu próprio estado de sessão. Os estados de sessão permitem que os comandos em um módulo sejam executados sem afetar o estado da sessão global.
O estado da sessão do chamador é o estado da sessão para o qual um módulo é importado. Normalmente, refere-se ao estado da sessão global, mas quando um módulo importa módulos aninhados, o chamador é o módulo e o estado da sessão do chamador é o estado da sessão do módulo.