Powershell读取本机注册表中的所有软件关联扩展名

适用于所有版本。

下面代码输出极为密集,这段代码能从注册表获取所有软件的关联扩展名。

代码如下:

Get-ItemProperty Registry::HKCR\.* |
  Select-Object -Property PSChildName, '(default)', ContentType, PerceivedType

注意搭配命令使用:这里Get-ItemProperty使用用了“Registry::”方法替代了Powershell原注册表驱动路径,这种方法你可以使用默认的注册表路径,同时还可以访问一些没有驱动路径的注册表(如:HKEY_CLASSES_ROOT)。

注意使用Select-Object选择要取回的值, 其中“(default)” 代表默认的注册表键名,另外“PSChildName”代表注册表键包含的值。

由于路径名带了*号,命令将自动获取所有HKCR下所有包含“.”的键值。

(0)

相关推荐

  • 使用PowerShell修改注册表

    下面的例子里, PowerShell修改了注册表键值, 完成了Security loop disable, 和loopbackcheck disable. 复制代码 代码如下: #Security loop disable so that you can look at it on the same machine if(($gchn = Get-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0\" -Nam

  • PowerShell注册表操作命令总结

    你可以像导航文件系统那样来访问注册表,PowerShell把文件系统和注册表都当作层次信息系统来处理.注册表中的键对应于文件系统的目录,但是键对应的值和文件系统中的文件不是非常类似.相反的,它们显示在属性栏,被以键的属性来管理. 复制代码 代码如下: PS C:\> Cd HKCU:PS HKCU:\> dir Hive: HKEY_CURRENT_USER Name                           Property----                         

  • PowerShell使用Remove-Item命令删除文件、注册表项介绍

    本文介绍PowerShell中如何将文件删除.在DOS下,可以使用del命令,Linux下也有rm命令,而在PowerShell中使用Remove-Item这个cmdlet就可以一句话轻松搞定! 在PowerShell中,删除文件的cmdlet为Remove-Item.Remove-Item这个cmdlet有如下一些别名:ri.rm.rmdir.del.erase.rd,如果大家要问这些别名怎么记或者怎么来的,小编提示一下,这些别名都是DOS和Linux系统下,删除文件和删除目录的命令.仔细回想

  • Powershell实现从注册表获取用户配置脚本分享

    支持所有版本. 要获得本地用户的配置文件,可以使用这个脚本: 复制代码 代码如下: $path = 'Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\*'   Get-ItemProperty -Path $path |   Select-Object -Property PSChildName, ProfileImagePath 这将获得ProfileList下所有的键值

  • PowerShell小技巧之查找获取注册表路径

    在先前的技巧中我们说明如何将一个PS内置的路径格式转化成一个实际路径.这里介绍了一个例子.这段代码递归从HKEY_CURRENT_USER获取所有包含"powershell"词缀的键(简单的替换查询词缀将能获得你想要查询的任何东西) 复制代码 代码如下: Get-ChildItem -Path HKCU:\ -Include *PowerShell* -Recurse -ErrorAction SilentlyContinue|Select-Object -Property *Path

  • Powershell实现从注册表获取本地关联文件的扩展名

    适用于所有版本. 在先前的技巧中我们知道如何用一行命令获取多行注册表记录,这里,我们再来回顾下这段代码: 复制代码 代码如下: $lookup = Get-ItemProperty Registry::HKCR\.[a-f]?? |   Select-Object -Property PSChildName, '(default)', ContentType, PerceivedType |   Group-Object -Property PSChildName -AsHashTable -A

  • Powershell小技巧之获取注册表值的类型

    当你不需要获取注册表数据类型而只要其值是非常简单的:你可以使用Get-ItemProperty: 复制代码 代码如下: Get-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 如果你需要获取数据类型,只需要多几个步骤: 复制代码 代码如下: $key = Get-Item -Path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run $key.Get

  • Powershell从注册表中查询默认MAPI客户端的例子

    当你通过类似Mailto:链接发送邮件,此时邮件客户端就是MAPI客户端.如果要找出到这个MAPI客户端在哪里,这里有个函数能从注册表中获得该信息. 复制代码 代码如下: functionGet-MAPIClient{    functionRemove-Argument    {      param      (        $CommandLine      ) $divider=''if ($CommandLine.StartsWith('"'))      {        $div

  • Powershell读取本机注册表中的所有软件关联扩展名

    适用于所有版本. 下面代码输出极为密集,这段代码能从注册表获取所有软件的关联扩展名. 复制代码 代码如下: Get-ItemProperty Registry::HKCR\.* |   Select-Object -Property PSChildName, '(default)', ContentType, PerceivedType 注意搭配命令使用:这里Get-ItemProperty使用用了"Registry::"方法替代了Powershell原注册表驱动路径,这种方法你可以使

  • 注册表中存储数据库链接字符串的方法

    数据库的链接字符串是用数据库开发所必须的信息,我们通过链接字符串连接数据库,并进行各种数据库操作.那么链接字符串的存到哪里好呢?这没有什么定论,Asp系统开发中,一般存在一个conn.asp包含文件中或者如果又是COM,可能还会封闭到COM中,.Net开发中,大多数都选择存在Web.conifg中,也有人存储在另外一个单独的文件中.那么本文提供的是把数据库链接信息存储到注册表中的方案.也许你要问为什么要存到注册表呢?我想最起码的好处是安全,注册表的访问权限很高,一般远程服务在没有得到管理员账号的

  • 用vbs列出注册表中 Run 项中的所有项目

    问: 您好,脚本专家!如何列出注册表中 Run 项中的所有项目? -- JW 答: 您好,JW.如何列出注册表中 Run 项中的所有项目?坦白地讲,我们不打算告诉您.真的很抱歉.不是因为我们不喜欢您,而是因为我们认为我们有一个更好的答案给您.(如果我们错了,那好,我们只能说这不会是第一次.)  由于您对 Run 项感兴趣,因此我们假定您真正想知道的是如何找出哪些程序被配置为在每次 Windows 启动时自动运行.您一定可以从 Run 项中读取到该信息,不要对此产生怀疑.实际上,您可以从 Run 

  • 用vbscript得到注册表中是否存在某个值

    问: 嗨,Scripting Guy!如何知道远程计算机上的注册表中是否存在某个值? -- AL 答: 嗨,AL.完全披露时间:尽管我们叫做 Scripting Guy,但这并不表示我们了解有关脚本编写的一切事情.这个问题就是一个很好的例证.第一次看到这个问题时,我们认为:"好吧,WMI 中显然有某种 If Exists 方法可以实现这个目的."但当我们发现其中并没有这样的方法时,知道我们有多吃惊么?事实上,我们找不到任何可以检查注册表中是否存在某个值的方法.我们甚至--惭愧!--去查

  • javascript判断并获取注册表中可信任站点的方法

    本文实例讲述了javascript判断并获取注册表中可信任站点的方法.分享给大家供大家参考.具体分析如下: 判断可信任站点,首先要在注册表中找到可信任站点在注册表中的位置,如下: (1)域名作为可信任站点在注册表中的位置: HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\InternetSettings\\ZoneMap\\Domains\\ (2)IP作为可信任站点在注册表中的位置: HKCU\\Software\\Microsoft\\

  • 打开注册表,看优化软件在“搞什么鬼”

    Windows的注册表就像一个地下迷宫,每当我们感觉对它了解一些的时候,却发现它还包含着一个新的迷宫--我们拥有很多修改注册表的工具,但它们总是在注册表被软件修改之后才能用得到,怎么才能在注册表被改动的第一时间就发现呢?很多杀毒软件都忽视了对注册表的保护,而这往往是木马病毒滋生的温床!注册表是一个庞大的数据库,我们对它只有一个静态的了解.其实,了解注册表动态数据变化更有意义,因为几乎所有软件在安装和运行过程中,都会修改注册表数据,而这些注册表数据的变化很可能是有害的,例如木马程序添加的自启动数据

  • python读取注册表中值的方法

    在Python的标准库中,_winreg.pyd可以操作Windows的注册表,另外第三方的win32库封装了大量的Windows API,使用起来也很方便.不过这里介绍的是使用_winreg操作注册表,毕竟是Python自带的标准库,无需安装第三方库. 下面的例子是通过Python获取Windows XP下已经安装的补丁号.Windows的补丁号都在"HKEY_LOCAL_MACHINE\SOFTWARE\\Microsoft\\Updates"下,通过循环下面所有的目录节点,如果找

  • CMD下读取/修改/删除注册表项的方法

    好在系统自带的regedit.exe足够用了. 1,读取注册表 先将想查询的注册表项导出,再用type查看,比如: C:\>regedit /e 1.reg "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" C:\>type 1.reg | find "PortNumber" "PortNumber"=dw

  • Windows注册表中修改UAC(用户账号控制)及批处理脚本

    注册表路径: HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Policies/System 键说明: ConsentPromptBehaviorAdmin:通知强度级别 EnableLUA:是否关闭UAC PromptOnSecureDesktop:桌面是否变黑 1:UAC高 ConsentPromptBehaviorAdmin:2 EnableLUA:1 PromptOnSecureDesktop:1 2:UAC中 C

随机推荐