Test-PSSessionConfigurationFile

验证会话配置文件中的键和值。

语法

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

说明

此 cmdlet 仅在 Windows 平台上可用。

此 cmdlet 可验证会话配置文件是否包含有效的键以及其值的类型是否正确。 对于枚举值,该 cmdlet 将验证指定的值是否有效。

如果文件通过所有测试,cmdlet 会返回 $True;如果未通过,则返回 $False。 若要查找任何错误,请使用 Verbose 参数。

Test-PSSessionConfigurationFile 验证会话配置文件,例如由 New-PSSessionConfigurationFile cmdlet 创建的配置文件。 有关会话配置的信息,请参阅 about_Session_Configurations。 有关会话配置文件的信息,请参阅 about_Session_Configuration_Files

此 cmdlet 是在 PowerShell 3.0 中引入的。

示例

示例 1:测试会话配置文件

Test-PSSessionConfigurationFile -Path "FullLanguage.pssc"

True

示例 2:测试会话配置的会话配置文件

在此示例中,我们会测试受限会话配置中使用的配置文件。 Path 参数的值是获取受限会话配置的 Get-PSSessionConfiguration 命令的结果。 会话配置文件的路径存储在会话配置的 ConfigFilePath 属性的值中。

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

示例 3:测试所有会话配置文件

此示例中的函数测试本地计算机上的所有会话配置文件。 该函数使用 Get-PSSessionConfiguration cmdlet 获取所有会话配置。 ForEach-Object 循环中的代码显示文件路径并测试每个会话配置。

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

会话配置的 ConfigFilePath 属性包含在会话配置中使用的会话配置文件的路径(如果有)。

如果填充了 ConfigFilePath 属性的值(该值为 true),则该命令将获取(输出)ConfigFilePath 属性值。 然后,它使用 Test-PSSessionConfigurationFile cmdlet 测试 ConfigFilePath 值中的文件。 当文件无法通过测试时,Verbose 参数会返回文件错误。

参数

-Path

指定会话配置文件 (.pssc) 的路径和文件名。 如果省略路径,默认路径为当前文件夹。 允许使用通配符,但它们必须解析为单个文件。 还可以通过管道将会话配置文件路径传递给 Test-PSSessionConfigurationFile

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

输入

String

可以通过管道将会话配置文件路径传递给此 cmdlet。

输出

Boolean

备注

此 cmdlet 仅在 Windows 平台上可用。