Get-ItemProperty
获取指定项的属性。
语法
Get-ItemProperty
[-Path] <String[]>
[[-Name] <String[]>]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Credential <PSCredential>]
[-UseTransaction]
[<CommonParameters>]
Get-ItemProperty
-LiteralPath <String[]>
[[-Name] <String[]>]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Credential <PSCredential>]
[-UseTransaction]
[<CommonParameters>]
说明
cmdlet Get-ItemProperty
获取指定项的属性。
例如,可以使用此 cmdlet 获取文件对象的 LastAccessTime 属性的值。
还可以使用此 cmdlet 查看注册表项及其值。
示例
示例 1:获取有关特定目录的信息
此命令获取有关“C:\Windows”目录的信息。
Get-ItemProperty C:\Windows
示例 2:获取特定文件的属性
此命令获取“C:\Test\Weather.xls”文件的属性。
结果通过管道传递给 Format-List
cmdlet,以列表的形式显示输出。
Get-ItemProperty C:\Test\Weather.xls | Format-List
示例 3:在注册表子项中显示注册表项的值名称和数据
此命令显示“CurrentVersion”注册表子项中包含的每个注册表项的值名称和数据。
请注意,该命令要求有一个名为 的 HKLM:
PowerShell 驱动器,该驱动器映射到注册表的“HKEY_LOCAL_MACHINE”配置单元。
默认情况下,PowerShell 中提供了具有该名称和映射的驱动器。
或者,可以通过使用以下替代路径指定此注册表子项的路径(替代路径以提供程序名称开头,后跟两个冒号):
“Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion”。
Get-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion
示例 4:获取注册表子项中注册表项的值名称和数据
此命令获取“CurrentVersion”注册表子项中“ProgramFilesDir”注册表项的值名称和数据。 命令使用 Path 参数指定子项,使用 Name 参数指定条目的值名称。
该命令使用反向刻度或重音符 (') (PowerShell 延续字符)继续执行第二行上的命令。
Get-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion -Name "ProgramFilesDir"
示例 5:获取注册表项中注册表项的值名称和数据
此命令获取“PowerShellEngine”注册表项中的注册表项的值名称和数据。 结果显示在下面的示例输出中。
Get-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\PowerShell\1\PowerShellEngine
ApplicationBase : C:\Windows\system32\WindowsPowerShell\v1.0\
ConsoleHostAssemblyName : Microsoft.PowerShell.ConsoleHost, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, ProcessorArchitecture=msil
PowerShellVersion : 2.0
RuntimeVersion : v2.0.50727
CTPVersion : 5
PSCompatibleVersion : 1.0,2.0
示例 6:获取、格式化和显示注册表值和数据的结果
此示例演示如何设置列表中命令输出的格式 Get-ItemProperty
,以便轻松查看注册表值和数据,并轻松解释结果。
第一个命令使用 Get-ItemProperty
cmdlet 获取 Microsoft.PowerShell 子项中的注册表项。
此子项存储 PowerShell 的默认 shell 的选项。
结果显示在下面的示例输出中。
输出显示有两个注册表项,“Path”和“ExecutionPolicy”。 如果注册表项中包含的条目少于 5 个,则默认情况下,将以表的形式显示它,但通常列表形式更易于查看。
第二个命令使用相同的 Get-ItemProperty
命令。
但是,这次命令使用管道运算符 (|
) 将命令的结果发送到 Format-List
cmdlet。
命令 Format-List
使用值为“*”的 Property 参数, (所有) 显示列表中对象的所有属性。
结果显示在下面的示例输出中。
生成的显示显示了“Path”和“ExecutionPolicy”注册表项,以及注册表项对象的几个不太熟悉的属性。 其他属性(以 PS 为前缀)是 PowerShell 自定义对象的属性,例如表示注册表项的对象。
Get-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell
Path ExecutionPolicy
---- ---------------
C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe RemoteSigned
Get-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell | Format-List -Property *
PSPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\Software\Microsoft\PowerShell\1\ShellIds\Micro
soft.PowerShell
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\Software\Microsoft\PowerShell\1\ShellIds
PSChildName : Microsoft.PowerShell
PSDrive : HKLM
PSProvider : Microsoft.PowerShell.Core\Registry
Path : C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe
ExecutionPolicy : RemoteSigned
参数
-Credential
指定有权执行此操作的用户帐户。 默认为当前用户。
键入用户名,如“User01”或“Domain01\User01”;或输入 PSCredential 对象,如 Get-Credential
cmdlet 生成的一个 PSCredential 对象。
如果键入用户名,则将提示你输入密码。
警告
随同 Windows PowerShell 一起安装的任何提供程序都不支持此参数。
Type: | PSCredential |
Position: | Named |
Default value: | Current user |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Exclude
指定此 cmdlet 将从操作中排除的一个项或多个项(作为一个字符串数组)。 此参数值使 Path 参数有效。 请输入路径元素或模式,例如“*.txt”。 允许使用通配符。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Filter
以提供程序的格式或语言指定筛选器。 此参数值使 Path 参数有效。
筛选器的语法(包括通配符字符的使用),具体取决于提供程序。 筛选器比其他参数更高效,因为提供程序在 cmdlet 获取对象时应用它们,而不是在检索对象后让 PowerShell 筛选对象。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Include
指定此 cmdlet 将在操作中包含的一个项或多个项(作为一个字符串数组)。 此参数值使 Path 参数有效。 请输入路径元素或模式,例如“*.txt”。 允许使用通配符。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-LiteralPath
指定此属性的当前位置的路径。 与 Path 参数不同,LiteralPath 的值严格按照所键入的形式使用。 不会将任何字符解释为通配符。 如果路径包括转义符,请将其括在单引号中。 单引号告知 PowerShell 不要将任何字符解释为转义序列。
Type: | String[] |
Aliases: | PSPath |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Name
指定要检索的属性的名称。
Type: | String[] |
Aliases: | PSProperty |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
指定一个或多个项的路径。
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-UseTransaction
在活动事务中使用该命令。 仅当正在执行事务时,此参数才有效。 有关详细信息,请参阅“在活动事务中使用该命令”。 仅当正在执行事务时,此参数才有效。 有关详细信息,请参阅 about_Transactions。
Type: | SwitchParameter |
Aliases: | usetx |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
输入
可以通过管道将包含路径的字符串传递给 Get-ItemProperty
。
输出
System.Boolean, System.String, System.DateTime
Get-ItemProperty
为它获取的每个项属性返回一个 对象。
对象类型取决于检索的对象。
例如,在文件系统驱动器中,它可能会返回一个文件或文件夹。
备注
该 Get-ItemProperty
cmdlet 旨在处理任何提供程序公开的数据。 若要列出会话中可用的提供程序,请键入“Get-PSProvider
”。 有关详细信息,请参阅 about_Providers。