获取文件中有关 Authenticode 签名的信息。
语法
Get-AuthenticodeSignature [-FilePath] <string[]> [<CommonParameters>]
说明
Get-AuthenticodeSignature cmdlet 获取文件中有关 Authenticode 签名的信息。如果文件未签名,也将检索该信息,只不过相应字段为空。
参数
-FilePath <string[]>
指定要检查的文件的路径。允许使用通配符,但它们必须指向单个文件。参数名(“FilePath”)为可选项。
是否为必需? |
true |
位置? |
1 |
默认值 |
|
是否接受管道输入? |
true (ByValue, ByPropertyName) |
是否接受通配符? |
false |
<CommonParameters>
此 cmdlet 支持通用参数:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。有关详细信息,请参阅 about_Commonparameters.
输入和输出
输入类型是指可通过管道传递给 cmdlet 的对象的类型。返回类型是指 Cmdlet 所返回对象的类型。
输入 |
System.String 可以通过管道将包含文件路径的字符串传递给 Get-AuthenticodeSignature。 |
输出 |
System.Management.Automation.Signature Get-AuthenticodeSignature 针对每个所获取的签名返回一个签名对象。 |
说明
有关 Windows PowerShell 中 Authenticode 签名的信息,请参阅 about_Signing。
示例 1
C:\PS>get-AuthenticodeSignature -filepath C:\Test\NewScript.ps1 说明 ----------- 此命令获取有关 NewScript.ps1 文件中 Authenticode 签名的信息。它使用 FilePath 参数来指定文件。
示例 2
C:\PS>get-authenticodesignature test.ps1, test1.ps1, sign-file.ps1, makexml.ps1 说明 ----------- 此命令获取有关命令行中列出的四个文件中 Authenticode 签名的信息。在此命令中,省略了 FilePath 参数(该参数为可选项)的名称。
示例 3
C:\PS>get-childitem $pshome\*.* | foreach-object {Get-AuthenticodeSignature $_} | where {$_.status -eq "Valid"} 说明 ----------- 此命令会列出 $pshome 目录中具有有效 Authenticode 签名的所有文件。$pshome 自动变量包含 Windows PowerShell 安装目录的路径。 此命令使用 Get-ChildItem cmdlet 获取 $pshome 目录中的文件。它采用 *.* 模式排除目录(尽管它也会排除文件名中不含点的文件)。 此命令使用管道运算符 (|) 将 $pshome 中的文件发送到 Foreach-Object cmdlet,其中将针对每个文件调用 Get-AuthenticodeSignature。 Get-AuthenticodeSignature 命令的结果将发送到 Where-Object 命令,该命令仅选择状态为“Valid”的签名对象。
另请参阅