New-PSSessionConfigurationFile
Cria um ficheiro que define uma configuração de sessão.
Syntax
New-PSSessionConfigurationFile
[-Path] <String>
[-SchemaVersion <Version>]
[-Guid <Guid>]
[-Author <String>]
[-CompanyName <String>]
[-Copyright <String>]
[-Description <String>]
[-PowerShellVersion <Version>]
[-SessionType <SessionType>]
[-ModulesToImport <Object[]>]
[-AssembliesToLoad <String[]>]
[-VisibleAliases <String[]>]
[-VisibleCmdlets <String[]>]
[-VisibleFunctions <String[]>]
[-VisibleProviders <String[]>]
[-AliasDefinitions <Hashtable[]>]
[-FunctionDefinitions <Hashtable[]>]
[-VariableDefinitions <Object>]
[-EnvironmentVariables <Object>]
[-TypesToProcess <String[]>]
[-FormatsToProcess <String[]>]
[-LanguageMode <PSLanguageMode>]
[-ExecutionPolicy <ExecutionPolicy>]
[-ScriptsToProcess <String[]>]
[<CommonParameters>]
Description
O New-PSSessionConfigurationFile
cmdlet cria um ficheiro de definições que definem uma configuração de sessão e o ambiente das sessões que são criadas com a configuração da sessão.
Para utilizar o ficheiro numa configuração de sessão, utilize o parâmetro Path dos Register-PSSessionConfiguration
cmdlets ou Set-PSSessionConfiguration
.
O ficheiro de configuração de sessão que New-PSSessionConfigurationFile
cria é um ficheiro de texto legível por humanos que contém uma tabela hash das propriedades e valores de configuração da sessão. O ficheiro tem uma .pssc
extensão de nome de ficheiro.
Todos os parâmetros de New-PSSessionConfigurationFile
são opcionais, exceto o parâmetro Path .
Se omitir um parâmetro, a chave correspondente no ficheiro de configuração da sessão será comentada, exceto quando indicado na descrição do parâmetro.
Uma configuração de sessão, também conhecida como ponto final, é uma coleção de definições no computador local que definem o ambiente para sessões do PowerShell (PSSessions) que se ligam ao computador. Todas as PSSessions utilizam uma configuração de sessão. Para especificar uma configuração de sessão específica, utilize o parâmetro ConfigurationName dos cmdlets que criam uma sessão, como o New-PSSession
cmdlet .
Um ficheiro de configuração de sessão facilita a definição de uma configuração de sessão sem scripts complexos ou assemblagens de código. As definições no ficheiro são utilizadas com o script de arranque opcional e quaisquer assemblagens na configuração da sessão.
Para obter mais informações sobre configurações de sessão e ficheiros de configuração de sessão, veja about_Session_Configurations e about_Session_Configuration_Files.
Este cmdlet foi introduzido no PowerShell 3.0.
Exemplos
Exemplo 1: Criar e utilizar uma sessão NoLanguage
Este exemplo mostra como criar e os efeitos da utilização de uma sessão sem idioma.
Os passos incluem:
- Create um novo ficheiro de configuração.
- Registe a configuração.
- Create uma nova sessão que utiliza a configuração.
- Execute comandos nessa nova sessão.
Para executar os comandos neste exemplo, inicie o PowerShell com a opção Executar como administrador. Esta opção é necessária para executar o Register-PSSessionConfiguration
cmdlet .
New-PSSessionConfigurationFile -Path .\NoLanguage.pssc -LanguageMode NoLanguage
Register-PSSessionConfiguration -Path .\NoLanguage.pssc -Name NoLanguage -Force
$NoLanguage = New-PSSession -ComputerName Srv01 -ConfigurationName NoLanguage
Invoke-Command -Session $NoLanguage -ScriptBlock { if ((Get-Date) -lt '1January2099') {'Before'} else {'After'} }
The syntax is not supported by this runspace. This might be because it is in no-language mode.
+ CategoryInfo : ParserError: (if ((Get-Date) ...') {'Before'} :String) [], ParseException
+ FullyQualifiedErrorId : ScriptsNotAllowed
+ PSComputerName : localhost
Neste exemplo, o Invoke-Command
falha porque LanguageMode está definido como NoLanguage.
Exemplo 2: Criar e utilizar uma sessão RestrictedLanguage
Este exemplo mostra como criar e os efeitos da utilização de uma sessão sem idioma.
Os passos incluem:
- Create um novo ficheiro de configuração.
- Registe a configuração.
- Create uma nova sessão que utiliza a configuração.
- Execute comandos nessa nova sessão.
Para executar os comandos neste exemplo, inicie o PowerShell com a opção Executar como administrador. Esta opção é necessária para executar o Register-PSSessionConfiguration
cmdlet .
New-PSSessionConfigurationFile -Path .\NoLanguage.pssc -LanguageMode RestrictedLanguage
Register-PSSessionConfiguration -Path .\NoLanguage.pssc -Name RestrictedLanguage -Force
$NoLanguage = New-PSSession -ComputerName Srv01 -ConfigurationName RestrictedLanguage
Invoke-Command -Session $NoLanguage -ScriptBlock { if ((Get-Date) -lt '1January2099') {'Before'} else {'After'} }
Before
Neste exemplo, o Invoke-Command
é bem-sucedido porque o LanguageMode está definido como RestrictedLanguage.
Exemplo 3: Alterar um Ficheiro de Configuração de Sessão
Este exemplo mostra como alterar o ficheiro de configuração da sessão utilizado numa sessão existente denominada "ITTasks". Anteriormente, estas sessões tinham apenas os módulos principais e um módulo itTasks interno. O administrador quer adicionar o módulo PSScheduledJob a sessões criadas com a configuração da sessão ITTasks.
New-PSSessionConfigurationFile -Path .\New-ITTasks.pssc -ModulesToImport Microsoft*, ITTasks, PSScheduledJob
Set-PSSessionConfiguration -Name ITTasks -Path .\New-ITTasks.pssc
O New-PSSessionConfigurationFile
cmdlet para criar um ficheiro de configuração de sessão que importa os módulos necessários. O Set-PSSessionConfiguration
cmdlet substitui o ficheiro de configuração atual pelo novo. Esta nova configuração afeta apenas as novas sessões criadas após a alteração.
As sessões "ITTasks" existentes não são afetadas.
Exemplo 4: Editar um Ficheiro de Configuração de Sessão
Este exemplo mostra como alterar uma configuração de sessão ao editar a cópia de configuração de sessão ativa do ficheiro de configuração. Para modificar a cópia de configuração da sessão do ficheiro de configuração, tem de ter acesso de controlo total ao ficheiro. Isto pode exigir que altere as permissões no ficheiro.
Neste cenário, queremos adicionar um novo alias para o Select-String
cmdlet ao editar o ficheiro de configuração ativo.
O código de exemplo abaixo executa os seguintes passos para fazer esta alteração:
- Obtenha o caminho do ficheiro de configuração para a sessão ITConfig.
- O utilizador edita o ficheiro de configuração com Notepad.exe para alterar o valor AliasDefinitions da seguinte forma:
AliasDefinitions = @(@{Name='slst';Value='Select-String'})
. - Teste o ficheiro de configuração atualizado.
$ITConfig = Get-PSSessionConfiguration -Name ITConfig
notepad.exe $ITConfig.ConfigFilePath
Test-PSSessionConfigurationFile -Path $ITConfig.ConfigFilePath
True
Utilize o parâmetro Verboso com Test-PSSessionConfigurationFile
para apresentar os erros detetados. O cmdlet devolve $True
se não forem detetados erros no ficheiro.
Exemplo 5: Create um ficheiro de configuração de exemplo
Este exemplo mostra um New-PSSessionConfigurationFile
comando que utiliza todos os parâmetros do cmdlet.
Está incluído para mostrar o formato de entrada correto para cada parâmetro.
O SampleFile.pssc resultante é apresentado na saída.
$configSettings = @{
Path = '.\SampleFile.pssc'
SchemaVersion = '1.0.0.0'
Author = 'User01'
Copyright = '(c) Fabrikam Corporation. All rights reserved.'
CompanyName = 'Fabrikam Corporation'
Description = 'This is a sample file.'
ExecutionPolicy = 'AllSigned'
PowerShellVersion = '3.0'
LanguageMode = 'FullLanguage'
SessionType = 'Default'
EnvironmentVariables = @{TESTSHARE='\\Test2\Test'}
ModulesToImport = @{ModuleName='PSScheduledJob'; ModuleVersion='1.0.0.0'; GUID='50cdb55f-5ab7-489f-9e94-4ec21ff51e59'},'PSDiagnostics'
AssembliesToLoad = 'System.Web.Services','FSharp.Compiler.CodeDom.dll'
TypesToProcess = 'Types1.ps1xml','Types2.ps1xml'
FormatsToProcess = 'CustomFormats.ps1xml'
ScriptsToProcess = 'Get-Inputs.ps1'
AliasDefinitions = @{Name='hlp';Value='Get-Help';Description='Gets help.';Options='AllScope'},@{Name='Update';Value='Update-Help';Description='Updates help';Options='ReadOnly'}
FunctionDefinitions = @{Name='Get-Function';ScriptBlock={Get-Command -CommandType Function};Options='ReadOnly'}
VariableDefinitions = @{Name='WarningPreference';Value='SilentlyContinue'}
VisibleAliases = 'c*','g*','i*','s*'
VisibleCmdlets = 'Get*'
VisibleFunctions = 'Get*'
VisibleProviders = 'FileSystem','Function','Variable'
}
New-PSSessionConfigurationFile @configSettings
Get-Content SampleFile.pssc
@{
# Version number of the schema used for this configuration file
SchemaVersion = '1.0.0.0'
# ID used to uniquely identify this session configuration
GUID = 'f7039ffa-7e54-4382-b358-a393c75c30d3'
# Specifies the execution policy for this session configuration
ExecutionPolicy = 'AllSigned'
# Specifies the language mode for this session configuration
LanguageMode = 'FullLanguage'
# Initial state of this session configuration
SessionType = 'Default'
# Environment variables defined in this session configuration
EnvironmentVariables = @{
TESTSHARE='\\Test2\Test'
}
# Author of this session configuration
Author = 'User01'
# Company associated with this session configuration
CompanyName = 'Fabrikam Corporation'
# Copyright statement for this session configuration
Copyright = '(c) Fabrikam Corporation. All rights reserved.'
# Description of the functionality provided by this session configuration
Description = 'This is a sample file.'
# Version of the PowerShell engine used by this session configuration
PowerShellVersion = '3.0'
# Modules that will be imported
ModulesToImport = @{
ModuleVersion='1.0.0.0'
ModuleName='PSScheduledJob'
GUID='50cdb55f-5ab7-489f-9e94-4ec21ff51e59'
}, 'PSDiagnostics'
# Assemblies that will be loaded in this session configuration
AssembliesToLoad = 'System.Web.Services', 'FSharp.Compiler.CodeDom.dll'
# Aliases visible in this session configuration
VisibleAliases = 'c*', 'g*', 'i*', 's*'
# Cmdlets visible in this session configuration
VisibleCmdlets = 'Get*'
# Functions visible in this session configuration
VisibleFunctions = 'Get*'
# Providers visible in this session configuration
VisibleProviders = 'FileSystem', 'Function', 'Variable'
# Aliases defined in this session configuration
AliasDefinitions = @(
@{
Description='Gets help.'
Name='hlp'
Options='AllScope'
Value='Get-Help'
},
@{
Description='Updates help'
Name='Update'
Options='ReadOnly'
Value='Update-Help'
}
)
# Functions defined in this session configuration
FunctionDefinitions = @(
@{
Name='Get-Function'
Options='ReadOnly'
ScriptBlock={Get-Command -CommandType Function}
}
)
# Variables defined in this session configuration
VariableDefinitions = @(
@{
Value='SilentlyContinue'
Name='WarningPreference'
# Type files (.ps1xml) that will be loaded in this session configuration
TypesToProcess = 'C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\Types1.ps1xml', 'C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\Types2.ps1xml'
# Format files (.ps1xml) that will be loaded in this session configuration
FormatsToProcess = 'C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\CustomFormats.ps1xml'
# Specifies the scripts to execute after the session is configured
ScriptsToProcess = 'C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\Get-Inputs.ps1'
}
Este exemplo apresenta um comando New-PSSessionConfigurationFile que utiliza todos os parâmetros do cmdlet. Está incluído para mostrar o formato de entrada correto para cada parâmetro.
O SampleFile.pssc resultante é apresentado na saída.
Parâmetros
-AliasDefinitions
Adiciona os aliases especificados às sessões que utilizam a configuração da sessão. Introduza uma tabela hash com as seguintes chaves:
- Nome – nome do alias. Esta chave é necessária.
- Value – o comando que o alias representa. Esta chave é necessária.
- Descrição – uma cadeia de texto que descreve o alias. Esta chave é opcional.
- Opções - Opções de alias. Esta chave é opcional. O valor predefinido é Nenhum. Os valores aceitáveis para este parâmetro são: None, ReadOnly, Constant, Private ou AllScope.
Por exemplo: @{Name='hlp';Value='Get-Help';Description='Gets help';Options='ReadOnly'}
Type: | Hashtable[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AssembliesToLoad
Especifica as assemblagens a carregar para as sessões que utilizam a configuração da sessão.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Author
Especifica o autor da configuração da sessão ou o ficheiro de configuração. A predefinição é o utilizador atual. O valor deste parâmetro é visível no ficheiro de configuração da sessão, mas não é uma propriedade do objeto de configuração da sessão.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CompanyName
Especifica a empresa que criou a configuração da sessão ou o ficheiro de configuração. O valor predefinido é Desconhecido. O valor deste parâmetro é visível no ficheiro de configuração da sessão, mas não é uma propriedade do objeto de configuração da sessão.
Type: | String |
Position: | Named |
Default value: | Unknown |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Copyright
Especifica um direito de autor do ficheiro de configuração da sessão. O valor deste parâmetro é visível no ficheiro de configuração da sessão, mas não é uma propriedade do objeto de configuração da sessão.
Se omitir este parâmetro, New-PSSessionConfigurationFile
gera uma instrução copyright com o valor do parâmetro Author .
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Description
Especifica uma descrição da configuração da sessão ou do ficheiro de configuração da sessão. O valor deste parâmetro é visível no ficheiro de configuração da sessão, mas não é uma propriedade do objeto de configuração da sessão.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-EnvironmentVariables
Adiciona variáveis de ambiente à sessão. Introduza uma tabela hash em que as chaves são os nomes de variáveis de ambiente e os valores são os valores variáveis de ambiente.
Por exemplo: EnvironmentVariables=@{TestShare='\\Server01\TestShare'}
Type: | Object |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ExecutionPolicy
Especifica a política de execução de sessões que utilizam a configuração da sessão. Se omitir este parâmetro, o valor da chave ExecutionPolicy no ficheiro de configuração da sessão é Restrito. Para obter informações sobre políticas de execução no PowerShell, veja about_Execution_Policies.
Type: | ExecutionPolicy |
Accepted values: | Unrestricted, RemoteSigned, AllSigned, Restricted, Default, Bypass, Undefined |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FormatsToProcess
Especifica os ficheiros de formatação (.ps1xml) que são executados em sessões que utilizam a configuração da sessão. O valor deste parâmetro tem de ser um caminho completo ou absoluto dos ficheiros de formatação.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FunctionDefinitions
Adiciona as funções especificadas às sessões que utilizam a configuração da sessão. Introduza uma tabela hash com as seguintes chaves:
- Nome - Nome da função. Esta chave é necessária.
- ScriptBlock - Corpo da função. Introduza um bloco de scripts. Esta chave é necessária.
- Opções - Opções de função. Esta chave é opcional. O valor predefinido é Nenhum. Os valores aceitáveis para este parâmetro são: None, ReadOnly, Constant, Private ou AllScope.
Por exemplo: @{Name='Get-PowerShellProcess';ScriptBlock={Get-Process PowerShell};Options='AllScope'}
Type: | Hashtable[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Guid
Especifica um identificador exclusivo para o ficheiro de configuração da sessão. Se omitir este parâmetro, New-PSSessionConfigurationFile
gera um GUID para o ficheiro. Para criar um novo GUID no PowerShell, escreva New-Guid
.
Type: | Guid |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-LanguageMode
Determina que elementos da linguagem do PowerShell são permitidos em sessões que utilizam esta configuração de sessão. Pode utilizar este parâmetro para restringir os comandos que determinados utilizadores podem executar no computador.
Os valores aceitáveis para este parâmetro são:
- FullLanguage – todos os elementos de idioma são permitidos.
- ConstrainedLanguage – não são permitidos comandos que contenham scripts a serem avaliados. O modo ConstrainedLanguage restringe o acesso do utilizador a tipos, objetos ou métodos do Microsoft .NET Framework.
- NoLanguage – os utilizadores podem executar cmdlets e funções, mas não têm permissão para utilizar elementos de linguagem, como blocos de script, variáveis ou operadores.
- RestrictedLanguage – os utilizadores podem executar cmdlets e funções, mas não têm permissão para utilizar blocos de script ou variáveis, exceto para as seguintes variáveis permitidas:
$PSCulture
,$PSUICulture
,$True
,$False
e$Null
. Os utilizadores podem utilizar apenas os operadores de comparação básicos (-eq
,-gt
,-lt
). Não são permitidas instruções de atribuição, referências de propriedades e chamadas de método.
O valor predefinido do parâmetro LanguageMode depende do valor do parâmetro SessionType .
- Vazio - NoLanguage
- RestrictedRemoteServer - NoLanguage
- Predefinição - FullLanguage
Type: | PSLanguageMode |
Accepted values: | FullLanguage, RestrictedLanguage, NoLanguage, ConstrainedLanguage |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ModulesToImport
Especifica os módulos e snap-ins que são importados automaticamente para sessões que utilizam a configuração da sessão.
Por predefinição, apenas o snap-in Microsoft.PowerShell.Core é importado para sessões remotas, mas a menos que os cmdlets sejam excluídos, os utilizadores podem utilizar os Import-Module
cmdlets e Add-PSSnapin
para adicionar módulos e snap-ins à sessão.
Cada módulo ou snap-in no valor deste parâmetro pode ser representado por uma cadeia ou como uma tabela hash. Uma cadeia de módulo consiste apenas no nome do módulo ou snap-in. Uma tabela hash de módulo pode incluir moduleName, ModuleVersion e chaves GUID . Só é necessária a chave ModuleName .
Por exemplo, o seguinte valor consiste numa cadeia e numa tabela hash. Qualquer combinação de cadeias e tabelas hash, em qualquer ordem, é válida.
'TroubleshootingPack', @{ModuleName='PSDiagnostics'; ModuleVersion='1.0.0.0';GUID='c61d6278-02a3-4618-ae37-a524d40a7f44'}
O valor do parâmetro ModulesToImport do Register-PSSessionConfiguration
cmdlet tem precedência sobre o valor da chave ModulesToImport no ficheiro de configuração da sessão.
Type: | Object[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
Especifica o caminho e o nome do ficheiro de configuração da sessão. O ficheiro tem de ter uma .pssc
extensão de nome de ficheiro.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PowerShellVersion
Especifica a versão do motor do PowerShell em sessões que utilizam a configuração da sessão. Os valores aceitáveis para este parâmetro são: 2.0 e 3.0. Se omitir este parâmetro, a chave PowerShellVersion é comentada e a versão mais recente do PowerShell é executada na sessão.
O valor do parâmetro PSVersion do Register-PSSessionConfiguration
cmdlet tem precedência sobre o valor da chave PowerShellVersion no ficheiro de configuração da sessão.
Type: | Version |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SchemaVersion
Especifica a versão do esquema do ficheiro de configuração da sessão. O valor predefinido é "1.0.0.0".
Type: | Version |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ScriptsToProcess
Adiciona os scripts especificados às sessões que utilizam a configuração da sessão. Introduza o caminho e os nomes de ficheiro dos scripts. O valor deste parâmetro tem de ser um caminho completo ou absoluto de nomes de ficheiros de script.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SessionType
Especifica o tipo de sessão que é criada com a configuração da sessão. O valor predefinido é Predefinido. Os valores aceitáveis para este parâmetro são:
- Vazio – por predefinição, não são adicionados módulos à sessão. Utilize os parâmetros deste cmdlet para adicionar módulos, funções, scripts e outras funcionalidades à sessão. Esta opção foi concebida para criar sessões personalizadas ao adicionar comandos selecionados. Se não adicionar comandos a uma sessão vazia, a sessão está limitada a expressões e poderá não ser utilizável.
- Predefinição – adiciona o módulo Microsoft.PowerShell.Core à sessão. Este módulo inclui o cmdlet que os
Import-Module
utilizadores podem utilizar para importar outros módulos, a menos que proíba explicitamente este cmdlet. - RestrictedRemoteServer. Inclui apenas as seguintes funções de proxy:
Exit-PSSession
, ,Get-Command
Get-FormatData
,Get-Help
,Measure-Object
,Out-Default
eSelect-Object
. Utilize os parâmetros deste cmdlet para adicionar módulos, funções, scripts e outras funcionalidades à sessão.
Type: | SessionType |
Accepted values: | Empty, RestrictedRemoteServer, Default |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TypesToProcess
Adiciona os ficheiros de tipo especificados .ps1xml
às sessões que utilizam a configuração da sessão. Introduza os nomes de ficheiro do tipo. O valor deste parâmetro tem de ser um caminho completo ou absoluto para escrever nomes de ficheiro.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VariableDefinitions
Adiciona as variáveis especificadas às sessões que utilizam a configuração da sessão. Introduza uma tabela hash com as seguintes chaves:
- Nome - Nome da variável. Esta chave é necessária.
- Valor - Valor variável. Esta chave é necessária.
- Opções - Opções de variáveis. Esta chave é opcional. O valor predefinido é Nenhum. Os valores aceitáveis para este parâmetro são: None, ReadOnly, Constant, Private ou AllScope.
Por exemplo: @{Name='WarningPreference';Value='SilentlyContinue';Options='AllScope'}
Type: | Object |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VisibleAliases
Limita os aliases na sessão aos especificados no valor deste parâmetro, bem como quaisquer aliases que definir no parâmetro AliasDefinition . São suportados carateres universais. Por predefinição, todos os aliases definidos pelo motor do PowerShell e todos os aliases exportados pelos módulos são visíveis na sessão.
Por exemplo: VisibleAliases='gcm', 'gp'
Quando qualquer parâmetro Visible é incluído no ficheiro de configuração da sessão, o PowerShell remove o cmdlet e o Import-Module
respetivo alias ipmo da sessão.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-VisibleCmdlets
Limita os cmdlets na sessão aos especificados no valor deste parâmetro. São suportados carateres universais e Nomes Qualificados do Módulo.
Por predefinição, todos os cmdlets que os módulos na exportação da sessão estão visíveis na sessão. Utilize os parâmetros SessionType e ModulesToImport para determinar que módulos e snap-ins são importados para a sessão. Se nenhum módulo em ModulesToImport expor o cmdlet, o módulo adequado tentará ser carregado automaticamente.
Quando qualquer parâmetro Visible é incluído no ficheiro de configuração da sessão, o PowerShell remove o cmdlet e o Import-Module
respetivo alias ipmo da sessão.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-VisibleFunctions
Limita as funções na sessão às especificadas no valor deste parâmetro, bem como todas as funções que definir no parâmetro FunctionDefinition . São suportados carateres universais.
Por predefinição, todas as funções que os módulos na exportação da sessão estão visíveis na sessão. Utilize os parâmetros SessionType e ModulesToImport para determinar que módulos e snap-ins são importados para a sessão.
Quando qualquer parâmetro Visible é incluído no ficheiro de configuração da sessão, o PowerShell remove o cmdlet e o Import-Module
respetivo alias ipmo da sessão.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-VisibleProviders
Limita os fornecedores do PowerShell na sessão aos especificados no valor deste parâmetro. São suportados carateres universais.
Por predefinição, todos os fornecedores que módulos na exportação da sessão estão visíveis na sessão. Utilize os parâmetros SessionType e ModulesToImport para determinar que módulos são importados para a sessão.
Quando qualquer parâmetro Visible é incluído no ficheiro de configuração da sessão, o PowerShell remove o cmdlet e o Import-Module
respetivo ipmo
alias da sessão.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
Entradas
None
Não é possível encaminhar quaisquer objetos para este cmdlet.
Saídas
None
Este cmdlet não gera nenhuma saída.
Notas
Os parâmetros, como VisibleCmdlets e VisibleProviders, não importam itens para a sessão. Em vez disso, selecionam entre os itens importados para a sessão. Por exemplo, se o valor do parâmetro VisibleProviders for o fornecedor de Certificados, mas o parâmetro ModulesToImport não especificar o módulo Microsoft.PowerShell.Security que contém o fornecedor de Certificados, o fornecedor de Certificados não está visível na sessão.
New-PSSessionConfigurationFile
cria um ficheiro de configuração de sessão que tem uma extensão de nome de ficheiro .pssc no caminho que especificar no parâmetro Path . Quando utiliza o ficheiro de configuração de sessão para criar uma configuração de sessão, oRegister-PSSessionConfiguration
cmdlet copia o ficheiro de configuração e guarda uma cópia ativa do ficheiro no subdiretório SessionConfig do$PSHOME
diretório.A propriedade ConfigFilePath da configuração da sessão contém o caminho completamente qualificado do ficheiro de configuração de sessão ativa. Pode modificar o ficheiro de configuração ativo no diretório em
$PSHOME
qualquer altura através de qualquer editor de texto. As alterações efetuadas afetam todas as novas sessões que utilizam a configuração da sessão, mas não as sessões existentes.Antes de utilizar um ficheiro de configuração de sessão editada, utilize o
Test-PSSessionConfigurationFile
cmdlet para verificar se as entradas do ficheiro de configuração são válidas.