Test-FileCatalog 
	
              Test-FileCatalog 验证目录文件 (.cat) 中包含的哈希是否与实际文件的哈希匹配,以验证其真实性。
此 cmdlet 仅在 Windows 上受支持。
语法
Default (默认值)
Test-FileCatalog
    [-Detailed]
    [-FilesToSkip <String[]>]
    [-CatalogFilePath] <String>
    [[-Path] <String[]>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]
说明
此 cmdlet 仅在 Windows 平台上可用。
              Test-FileCatalog 通过将目录文件(.cat)的文件哈希与磁盘上实际文件的哈希进行比较来验证文件的真实性。 如果检测到任何不匹配,它将返回 ValidationFailed 状态。 用户可以使用 -Detailed 参数检索所有这些信息。 它还在 Signature 属性中显示目录的签名状态,这等效于对目录文件调用 Get-AuthenticodeSignature cmdlet。 用户还可以使用 -FilesToSkip 参数在验证期间跳过任何文件。
此 cmdlet 仅在 Windows 上受支持。
示例
示例 1:创建和验证文件目录
New-FileCatalog -Path $PSHOME\Modules\Microsoft.PowerShell.Utility -CatalogFilePath \temp\Microsoft.PowerShell.Utility.cat -CatalogVersion 2.0
Test-FileCatalog -CatalogFilePath \temp\Microsoft.PowerShell.Utility.cat -Path "$PSHome\Modules\Microsoft.PowerShell.Utility\"
Valid
示例 2:使用详细输出验证文件目录
Test-FileCatalog -Detailed -CatalogFilePath \temp\Microsoft.PowerShell.Utility.cat -Path "$PSHome\Modules\Microsoft.PowerShell.Utility\"
Status        : Valid
HashAlgorithm : SHA256
CatalogItems  : {[Microsoft.PowerShell.Utility.psd1,
                A7028BD54018AE519381CDF5BF91F3B0417BD9345478086089ACBFAD05C899FC], [Microsoft.PowerShell.Utility.psm1,
                1127E8151FB86BCB683F932E8F6538552F7195816ED351A28AE07A753B8F20DE]}
PathItems     : {[Microsoft.PowerShell.Utility.psd1,
                A7028BD54018AE519381CDF5BF91F3B0417BD9345478086089ACBFAD05C899FC], [Microsoft.PowerShell.Utility.psm1,
                1127E8151FB86BCB683F932E8F6538552F7195816ED351A28AE07A753B8F20DE]}
Signature     : System.Management.Automation.Signature
参数
-CatalogFilePath  
		目录文件 (.cat) 的路径,其中包含要用于验证的哈希。
参数属性
| 类型: | String | 
| 默认值: | None | 
| 支持通配符: | False | 
| 不显示: | False | 
参数集
(All)
| Position: | 0 | 
| 必需: | True | 
| 来自管道的值: | True | 
| 来自管道的值(按属性名称): | True | 
| 来自剩余参数的值: | False | 
-Confirm
在运行 cmdlet 之前,提示你进行确认。
参数属性
| 类型: | SwitchParameter | 
| 默认值: | False | 
| 支持通配符: | False | 
| 不显示: | False | 
| 别名: | cf | 
参数集
(All)
| Position: | Named | 
| 必需: | False | 
| 来自管道的值: | False | 
| 来自管道的值(按属性名称): | False | 
| 来自剩余参数的值: | False | 
-Detailed
返回更详细的 CatalogInformation 对象,该对象包含已测试的文件、其预期/实际哈希,以及目录文件的 Authenticode 签名(如果已签名)。
参数属性
| 类型: | SwitchParameter | 
| 默认值: | None | 
| 支持通配符: | False | 
| 不显示: | False | 
参数集
(All)
| Position: | Named | 
| 必需: | False | 
| 来自管道的值: | False | 
| 来自管道的值(按属性名称): | False | 
| 来自剩余参数的值: | False | 
-FilesToSkip 
		不应作为验证的一部分进行测试的路径数组。
参数属性
| 类型: | String[] | 
| 默认值: | None | 
| 支持通配符: | False | 
| 不显示: | False | 
参数集
(All)
| Position: | Named | 
| 必需: | False | 
| 来自管道的值: | False | 
| 来自管道的值(按属性名称): | False | 
| 来自剩余参数的值: | False | 
-Path
应根据目录文件验证的文件夹或文件数组。
参数属性
| 类型: | String[] | 
| 默认值: | None | 
| 支持通配符: | False | 
| 不显示: | False | 
参数集
(All)
| Position: | 1 | 
| 必需: | False | 
| 来自管道的值: | True | 
| 来自管道的值(按属性名称): | True | 
| 来自剩余参数的值: | False | 
-WhatIf 
		显示 cmdlet 运行时会发生什么情况。 命令脚本未运行。
参数属性
| 类型: | SwitchParameter | 
| 默认值: | False | 
| 支持通配符: | False | 
| 不显示: | False | 
| 别名: | 无线 | 
参数集
(All)
| Position: | Named | 
| 必需: | False | 
| 来自管道的值: | False | 
| 来自管道的值(按属性名称): | False | 
| 来自剩余参数的值: | False | 
CommonParameters
此 cmdlet 支持通用参数:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 有关详细信息,请参阅 about_CommonParameters。
输入
DirectoryInfo
管道接受字符串或对象数组,这些字符串或 DirectoryInfo 对象表示需要验证的文件的路径。
输出
CatalogValidationStatus
默认返回类型,包含 Valid 值 或 ValidationFailed。
CatalogInformation
使用 -Detailed 时返回的更详细的对象可用于分析可能已通过或未通过验证的特定文件、预期的哈希值与找到的哈希值以及目录中使用的算法。
备注
此 cmdlet 仅在 Windows 平台上可用。