New-ModuleManifest
Cria um novo manifesto do 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[]>]
[-PrivateData <Object>]
[-Tags <string[]>]
[-ProjectUri <uri>]
[-LicenseUri <uri>]
[-IconUri <uri>]
[-ReleaseNotes <string>]
[-HelpInfoUri <string>]
[-PassThru]
[-DefaultCommandPrefix <string>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
O cmdlet New-ModuleManifest
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 arquivo .psd1
que contém uma tabela de hash. As chaves e os valores na tabela de hash descrevem o conteúdo e os atributos do módulo, definem os pré-requisitos e determinam como os componentes são processados. 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 adicionar chaves de módulo que esse cmdlet não adiciona, abra o arquivo resultante em um editor de texto.
Cada parâmetro, com exceção de 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 tem efeito.
No PowerShell 2.0, New-ModuleManifest
solicita os valores de 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.
Exemplos
Exemplo 1 – Criar um 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: 1/22/2019
#
@{
# Script module or binary module file associated with this manifest.
# RootModule = ''
# Version number of this module.
ModuleVersion = '1.0'
# ID used to uniquely identify this module
GUID = '47179120-0bcb-4f14-8d80-f4560107f85c'
# Author of this module
Author = 'ContosoAdmin'
# Company or vendor of this module
CompanyName = 'Unknown'
# Copyright statement for this module
Copyright = '(c) 2019 ContosoAdmin. All rights reserved.'
# Description of the functionality provided by this module
# Description = ''
# Minimum version of the Windows PowerShell engine required by this module
# PowerShellVersion = ''
# Name of the Windows PowerShell host required by this module
# PowerShellHostName = ''
# Minimum version of the Windows PowerShell host required by this module
# PowerShellHostVersion = ''
# Minimum version of the .NET Framework required by this module
# DotNetFrameworkVersion = ''
# Minimum version of the common language runtime (CLR) required by this module
# 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
FunctionsToExport = '*'
# Cmdlets to export from this module
CmdletsToExport = '*'
# Variables to export from this module
VariablesToExport = '*'
# Aliases to export from this module
AliasesToExport = '*'
# 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
# PrivateData = ''
# 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.
New-ModuleManifest -PowerShellVersion 1.0 -AliasesToExport JKBC, DRC, TAC -Path C:\ps-test\ManifestTest.psd1
Exemplo 3 – Criar um manifesto que exija outros módulos
Este exemplo usa um formato de cadeia de caracteres para especificar o nome do módulo
$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 usar os formatos de tabela de cadeia de caracteres e hash do parâmetro ModuleList, RequiredModulese nestedModules. Você pode combinar cadeias de caracteres e tabelas de hash no mesmo valor de parâmetro.
Exemplo 4 – Criar um manifesto que dê 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áveis do XML do HelpInfo para o módulo.
$moduleSettings = @{
HelpInfoUri = 'https://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 do HelpInfo, consulte suporte à ajuda atualizável.
Exemplo 5 – Obtendo 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 cmdlet Format-List
para exibir todas as propriedades e valores do objeto do módulo.
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 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 *
(todos), o que significa que todos os aliases definidos no módulo são exportados pelo manifesto.
Tipo: | String[] |
Cargo: | Named |
Valor padrão: | * (all) |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | True |
-Author
Especifica o autor do módulo.
Se você omitir esse parâmetro, New-ModuleManifest
criará uma chave de Author com o nome do usuário atual.
Tipo: | String |
Cargo: | Named |
Valor padrão: | Name of the current user |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-ClrVersion
Especifica a versão mínima do CLR (Common Language Runtime) do Microsoft .NET Framework exigido pelo módulo.
Tipo: | Version |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-CmdletsToExport
Especifica os cmdlets que o módulo exporta. Curingas são permitidos.
Você pode usar esse parâmetro para restringir os cmdlets 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 *
(todos), o que significa que todos os cmdlets definidos no módulo são exportados pelo manifesto.
Tipo: | String[] |
Cargo: | Named |
Valor padrão: | * (all) |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | True |
-CompanyName
Identifica a empresa ou o fornecedor que criou o módulo.
Se você omitir esse parâmetro, New-ModuleManifest
criará uma chave CompanyName com um valor "Desconhecido".
Tipo: | String |
Cargo: | Named |
Valor padrão: | "Unknown" |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Confirm
Solicita a confirmação antes de executar o cmdlet.
Tipo: | SwitchParameter |
Aliases: | cf |
Cargo: | Named |
Valor padrão: | False |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Copyright
Especifica uma instrução de direitos autorais para o módulo.
Se você omitir esse parâmetro,
Tipo: | String |
Cargo: | Named |
Valor padrão: | (c) <year> <username>. All rights reserved. |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-DefaultCommandPrefix
Especifica um prefixo que é anexado aos substantivos de todos os comandos no módulo quando eles são importados para uma sessão. Insira uma cadeia de caracteres de prefixo. Prefixos impedem 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 de prefixo
Esse parâmetro foi introduzido no PowerShell 3.0.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Description
Descreve o conteúdo do módulo.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-DotNetFrameworkVersion
Especifica a versão mínima do Microsoft .NET Framework necessária para o módulo.
Tipo: | Version |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-DscResourcesToExport
Especifica os recursos de DSC (Configuração de Estado Desejado) exportados pelo módulo. Curingas são permitidos.
Tipo: | String[] |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | True |
-FileList
Especifica todos os itens incluídos no módulo.
Essa chave foi projetada para atuar como um inventário de módulo. Os arquivos listados na chave são incluídos quando o módulo é publicado, mas todas as funções não são exportadas automaticamente.
Tipo: | String[] |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | 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 cmdlet Update-FormatData
com os arquivos especificados.
Como os arquivos de formatação não têm escopo, eles afetam todos os estados de sessão na sessão.
Tipo: | String[] |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | 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 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 *
(todos), o que significa que todas as funções definidas no módulo são exportadas pelo manifesto.
Tipo: | String[] |
Cargo: | Named |
Valor padrão: | * (all) |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | 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,
Para criar uma nova GUID
Tipo: | Guid |
Cargo: | Named |
Valor padrão: | A GUID generated for the module |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-HelpInfoUri
Especifica o endereço da Internet do arquivo XML HelpInfo para o módulo. Insira um URI (Uniform Resource Identifier) que começa com http ou https.
O arquivo XML HelpInfo dá suporte ao recurso de Ajuda Atualizável que foi introduzido no PowerShell 3.0. Ele contém informações sobre o local dos arquivos de ajuda para download do módulo e os números de versão dos arquivos de ajuda mais recentes para cada localidade com suporte.
Para obter informações sobre a Ajuda Atualizável, consulte about_Updatable_Help. Para obter informações sobre o arquivo XML do HelpInfo, consulte suporte à ajuda atualizável.
Esse parâmetro foi introduzido no PowerShell 3.0.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-IconUri
Especifica a URL de um ícone para o módulo. O ícone especificado é exibido na página da Web da galeria do módulo.
Tipo: | Uri |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-LicenseUri
Especifica a URL dos termos de licenciamento do módulo.
Tipo: | Uri |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-ModuleList
Lista todos os módulos incluídos neste módulo.
Insira cada nome de módulo como uma cadeia de caracteres ou como uma tabela de hash com chaves ModuleName e ModuleVersion. A tabela de hash também pode ter uma chave de GUID
Essa chave foi projetada para atuar como um inventário de módulo. Os módulos listados no valor dessa chave não são processados automaticamente.
Tipo: | Object[] |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-ModuleVersion
Especifica a versão do módulo.
Esse parâmetro não é necessário, mas uma chave ModuleVersion é necessária no manifesto. Se você omitir esse parâmetro,
Tipo: | Version |
Cargo: | Named |
Valor padrão: | 1.0 |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | 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 no NestedModules execução de chave na ordem em que estão listados no valor.
Insira cada nome de módulo como uma cadeia de caracteres ou como uma tabela de hash com chaves ModuleName e ModuleVersion. A tabela de hash também pode ter uma chave de GUID
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 ele exporta. Por exemplo, usando um comando Export-ModuleMember
.
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 comando Get-Module
no estado de sessão do chamador.
Scripts (.ps1
) listados no nestedModules chave são executados no estado de sessão do módulo, não no estado de 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[] |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-PassThru
Grava o manifesto do módulo resultante no console e cria um arquivo .psd1
. Por padrão, esse cmdlet não gera nenhuma saída.
Tipo: | SwitchParameter |
Cargo: | Named |
Valor padrão: | False |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | 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 arquivo .psd1
, como $pshome\Modules\MyModule\MyModule.psd1
. O parâmetro Path é necessário.
Se você especificar o caminho para um arquivo existente, New-ModuleManifest
substituirá o arquivo sem aviso, 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 arquivo .psd1
.
Nota
Você não pode usar variáveis, como
Tipo: | String |
Cargo: | 1 |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-PowerShellHostName
Especifica o nome do programa host do PowerShell exigido pelo módulo. Insira o nome do programa host, como de host ise do Windows PowerShell ou ConsoleHost. Curingas não são permitidos.
Para localizar o nome de um programa host, no programa, digite $Host.Name
.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | 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 |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | 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.
Tipo: | Version |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-PrivateData
Especifica os dados que são passados para o módulo quando são importados.
Tipo: | Object |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-ProcessorArchitecture
Especifica a arquitetura do processador necessária para o módulo. Os valores válidos são x86, AMD64, IA64, MSIL e None (desconhecidos ou não especificados).
Tipo: | ProcessorArchitecture |
Valores aceitos: | None, MSIL, X86, IA64, Amd64, Arm |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-ProjectUri
Especifica a URL de uma página da Web sobre este projeto.
Tipo: | Uri |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-ReleaseNotes
Especifica notas de versão.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-RequiredAssemblies
Especifica os arquivos de assembly (.dll
) necessários para o módulo. Insira os nomes de arquivo do 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 requer, incluindo assemblies que devem ser carregados para atualizar qualquer formatação ou arquivos de tipo listados nas chaves
Tipo: | String[] |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-RequiredModules
Especifica os módulos que devem estar no estado de sessão global. Se os módulos necessários não estiverem no estado de sessão global, o PowerShell os importará. Se os módulos necessários não estiverem disponíveis, o comando Import-Module
falhará.
Insira cada nome de módulo como uma cadeia de caracteres ou como uma tabela de hash com chaves ModuleName e ModuleVersion. A tabela de hash também pode ter uma chave de GUID
No PowerShell 2.0, Import-Module
não importa módulos necessários automaticamente. Ele apenas verifica se os módulos necessários estão no estado de sessão global.
Tipo: | Object[] |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-RootModule
Especifica o arquivo primário ou raiz do módulo. Insira o nome do 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 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
Para exportar membros de arquivos
Nota
No PowerShell 2.0, essa chave foi chamada ModuleToProcess. Você pode usar o nome do parâmetro
Tipo: | String |
Aliases: | ModuleToProcess |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-ScriptsToProcess
Especifica arquivos de script (.ps1
) que são executados no estado de 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 logon.
Para especificar scripts executados no estado de sessão do módulo, use a chave NestedModules.
Tipo: | String[] |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Tags
Especifica uma matriz de marcas.
Tipo: | String[] |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | 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 cmdlet Update-TypeData
com os arquivos especificados.
Como os arquivos de tipo não têm escopo, eles afetam todos os estados de sessão na sessão.
Tipo: | String[] |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-VariablesToExport
Especifica as variáveis exportadas pelo módulo. Curingas são permitidos.
Você pode usar esse parâmetro para restringir as variáveis 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 *
(todos), o que significa que todas as variáveis definidas no módulo são exportadas pelo manifesto.
Tipo: | String[] |
Cargo: | Named |
Valor padrão: | * (all) |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | True |
-WhatIf
Mostra o que aconteceria se New-ModuleManifest
fosse executado. O cmdlet não é executado.
Tipo: | SwitchParameter |
Aliases: | wi |
Cargo: | Named |
Valor padrão: | False |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
Entradas
None
Você não pode canalizar a entrada para este cmdlet.
Saídas
None or System.String
Por padrão, New-ModuleManifest
não gera nenhuma saída. No entanto, se você usar o parâmetro PassThru, ele gerará um objeto System.String que representa o manifesto do módulo.
Observações
New-ModuleManifest
cria arquivos de manifesto do módulo (.psd1
) codificados como UTF16 .
Os manifestos do módulo geralmente são opcionais. No entanto, um manifesto de módulo é necessário para exportar um assembly instalado no cache de assembly global.
Para adicionar ou alterar arquivos no diretório $pshome\Modules
, inicie o PowerShell com a opção Executar como administrador.
No PowerShell 2.0, muitos parâmetros de New-ModuleManifest
eram obrigatórios, mesmo que não fossem necessários em um manifesto do módulo. A partir do PowerShell 3.0, somente 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 são executados sem afetar o estado da sessão global.
O estado da sessão do chamador é o estado da sessão no qual um módulo é importado. Normalmente, ele se refere ao estado de sessão global, mas quando um módulo importa módulos aninhados, o chamador é o módulo e o estado de sessão do chamador é o estado da sessão do módulo.