Test-PSSessionConfigurationFile

Verifica as chaves e os valores em um arquivo de configuração de sessão.

Syntax

Test-PSSessionConfigurationFile
    [-Path] <String>
    [<CommonParameters>]

Description

Este cmdlet só está disponível na plataforma Windows.

Este cmdlet verifica se um arquivo de configuração de sessão contém chaves válidas e se os valores são do tipo correto. Para valores enumerados, o cmdlet verifica se os valores especificados são válidos.

O cmdlet retornará $True se o arquivo passar em todos os testes e $False se não passar. Para encontrar erros, use o parâmetro Verbose .

Test-PSSessionConfigurationFile Verifica os arquivos de configuração da sessão, como os New-PSSessionConfigurationFile criados pelo cmdlet. Para obter informações sobre configurações de sessão, consulte about_Session_Configurations. Para obter informações sobre arquivos de configuração de sessão, consulte about_Session_Configuration_Files.

Este cmdlet foi introduzido no PowerShell 3.0.

Exemplos

Exemplo 1: Testar um arquivo de configuração de sessão

Test-PSSessionConfigurationFile -Path "FullLanguage.pssc"

True

Exemplo 2: Testar o arquivo de configuração de sessão de uma configuração de sessão

Neste exemplo, testamos o arquivo de configuração usado na configuração de sessão restrita . O valor do parâmetro Path é o resultado do comando que obtém a configuração de Get-PSSessionConfiguration sessão restrita. O caminho do arquivo de configuração de sessão é armazenado no valor da propriedade ConfigFilePath da configuração da sessão.

Test-PSSessionConfigurationFile -Path (Get-PSSessionConfiguration -Name Restricted).ConfigFilePath

Exemplo 3: Testar todos os arquivos de configuração da sessão

A função neste exemplo testa todos os arquivos de configuração de sessão no computador local. A função usa o Get-PSSessionConfiguration cmdlet para obter todas as configurações de sessão. O código dentro do ForEach-Object loop exibe o caminho do arquivo e testa cada uma das configurações de sessão.

function Test-AllConfigFiles
{
    Get-PSSessionConfiguration | ForEach-Object {
        if ($_.ConfigFilePath) {
            $_.ConfigFilePath
            Test-PSSessionConfigurationFile -Verbose -Path $_.ConfigFilePath
        }
    }
}
Test-AllConfigFiles

C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\Empty_6fd77bf6-e084-4372-bd8a-af3e207354d3.pssc
True
C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\Full_1e9cb265-dae0-4bd3-89a9-8338a47698a1.pssc
VERBOSE: The member 'AliasDefinitions' must contain the required key 'Description'. Add the require key
to the fileC:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\Full_1e9cb265-dae0-4bd3-89a9-8338a47698a1.pssc.
False
C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\NoLanguage_0c115179-ff2a-4f66-a5eb-e56e5692ba22.pssc
True
C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\RestrictedLang_b6bd9474-0a6c-4e06-8722-c2c95bb10d3e.pssc
True
C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\RRS_3fb29420-2c87-46e5-a402-e21436331efc.pssc
True

A propriedade ConfigFilePath de uma configuração de sessão contém o caminho do arquivo de configuração de sessão usado na configuração da sessão, se houver.

Se o valor da propriedade ConfigFilePath for preenchido (for true), o comando obterá (imprimirá) o valor da propriedade ConfigFilePath. Em seguida, ele usa o Test-PSSessionConfigurationFile cmdlet para testar o arquivo no valor ConfigFilePath . O parâmetro Verbose retorna o erro de arquivo quando o arquivo falha no teste.

Parâmetros

-Path

Especifica o caminho e o nome do arquivo de configuração de sessão (.pssc). Se você omitir o caminho, o padrão é a pasta atual. Há suporte para caracteres curinga, mas eles devem ser resolvidos em um único arquivo. Você também pode canalizar um caminho de arquivo de configuração de sessão para o Test-PSSessionConfigurationFile.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:True

Entradas

String

Você pode canalizar um caminho de arquivo de configuração de sessão para esse cmdlet.

Saídas

Boolean

Notas

Este cmdlet só está disponível em plataformas Windows.