zoukankan      html  css  js  c++  java
  • 如何查询注册表的值及 Powershell 应用

    利用 c:windowssystem32 eg.exe 的 query 参数即可。

    reg.exe 的参数如下:

    C:windowssystem32> reg.exe /?
    REG Operation [Parameter List]
      Operation  [ QUERY   | ADD    | DELETE  | COPY    | SAVE    | LOAD   | UNLOAD  | RESTORE | COMPARE | EXPORT | IMPORT  | FLAGS ]
    返回代码: (除了 REG COMPARE)
      0 - 成功
      1 - 失败
    要得到有关某个操作的帮助,请键入:
      REG Operation /?
    例如:
      REG QUERY /?
      REG ADD /?
      REG DELETE /?
      REG COPY /?
      REG SAVE /?
      REG RESTORE /?
      REG LOAD /?
      REG UNLOAD /?
      REG COMPARE /?
      REG EXPORT /?
      REG IMPORT /?
      REG FLAGS /?

    C:windowssystem32> reg query /?
    REG QUERY KeyName [/v [ValueName] | /ve] [/s] [/f Data [/k] [/d] [/c] [/e]] [/t Type] [/z] [/se Separator]
      KeyName  [\Machine]FullKey
               Machine - 远程机器名称,省略当前机器的默认值。在远程机器上
                         只有 HKLM 和 HKU 可用。
               FullKey - 以 ROOTKEYSubKey 名称形式
                    ROOTKEY - [ HKLM | HKCU | HKCR | HKU | HKCC ]
                    SubKey  - 在选择的 ROOTKEY 下的注册表项的全名
      /v       具体的注册表项值的查询。
               如果省略,会查询该项的所有值。
               只有与 /f 开关一起指定的情况下,此开关的参数才是可选的。它指定
               只在值名称中搜索。
      /ve      查询默认值或空值名称(默认)。
      /s       循环查询所有子项和值(如 dir /s)。
      /se      为 REG_MULTI_SZ 在数据字符串中指定分隔符(长度只为 1 个字符)。
               默认分隔符为 ""。
      /f       指定搜索的数据或模式。
               如果字符串包含空格,请使用双引号。默认为 "*"。
      /k       指定只在项名称中搜索。
      /d       指定只在数据中搜索。
      /c       指定搜索时区分大小写。
               默认搜索为不区分大小写。
      /e       指定只返回完全匹配。
               默认是返回所有匹配。
      /t       指定注册表值数据类型。
               有效的值是:
                 REG_SZ, REG_MULTI_SZ, REG_EXPAND_SZ,
                 REG_DWORD, REG_QWORD, REG_BINARY, REG_NONE
               默认为所有类型。
      /z       详细: 显示值名称类型的数字等值。
    示例:
      REG QUERY HKLMSoftwareMicrosoftResKit /v Version
        显示注册表值版本的值
      REG QUERY \ABCHKLMSoftwareMicrosoftResKitNtSetup /s
        显示远程机器 ABC 上的、在注册表项设置下的所有子项和值
      REG QUERY HKLMSoftwareMicrosoftResKitNtSetup /se #
        用 "#" 作为分隔符,显示类型为 REG_MULTI_SZ 的所有值名称的所有
        子项和值。
      REG QUERY HKLM /f SYSTEM /t REG_SZ /c /e
        以区分大小写的形式显示项、值和数据和数据类型 REG_SZ
        的、在 HKLM 更目录下的、"SYSTEM" 出现的精确次数
      REG QUERY HKCU /f 0F /d /t REG_BINARY
        显示在 HKCU 根目录下、数据类型为 REG_BINARY 的数据的项、值和
        数据的 "0F" 出现的次数。
      REG QUERY HKLMSOFTWARE /ve
        显示在 HKLMSOFTWARE 下的项、值和数据(默认)

    ==================================

    看一个 Powershell 应用示例:

    <查询当前 IE 版本>  ie.ps1:

    $version = c:windowssystem32 eg.exe query "hkey_local_machinesoftwaremicrosoftinternet explorer" /v version | select-string "version" | select-string "9.0"
        if ($version)
        {
            info("ie 9 is already installed, skipping ...");
            return;
        }

  • 相关阅读:
    《高效休息法》IT从业者如何高效休息
    《逆向管理-先行动后思考》
    《时间管理》总结
    Java面试,面试题
    Java线程池解析
    Java基础图解,JVM,线程,Spring,TCP,SpringMVC等开发体系图解
    Docker私服搭建--Harbor
    一:优化Docker中的Spring Boot应用:单层镜像方法
    七:Spring Security 前后端分离登录,非法请求直接返回 JSON
    python selenium模块使用出错-selenium.common.exceptions.WebDriverException: Message: 'geckodriver' executable needs to be in PATH.
  • 原文地址:https://www.cnblogs.com/backpacker/p/4714656.html
Copyright © 2011-2022 走看看