无忧启动论坛

标题: reg在for命令查询注册表策略值问题 [打印本页]

作者: yjqd    时间: 2023-11-7 14:56
标题: reg在for命令查询注册表策略值问题
本帖最后由 yjqd 于 2023-11-7 14:58 编辑

@echo off
echo.
for  /f "delims=" %%a in ('REG QUERY "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\ProductOptions" /v ProductPolicy') do (
        echo %%a
)
pause

结果只出现项名:HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\ProductOptions

ProductPolicy的值没出来,命令中ProductPolicy后面加上^|find /i "ProductPolicy"又能查询到ProductPolicy的值

for  /f "delims=" %%a in ('REG QUERY "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\ProductOptions" /v ProductPolicy^|find /i "ProductPolicy"') do (
        echo %%a
)


是怎么回事

作者: szwp    时间: 2023-11-7 15:14
双引号去掉
作者: hxwgz    时间: 2023-11-7 16:34
1 数值太长,无法赋值。
2 数值截断(4k)可以赋值。
作者: hxwgz    时间: 2023-11-7 17:30
本帖最后由 hxwgz 于 2023-11-7 18:05 编辑

可能 find 命令,一行只能返回4095个字符。
作者: nathan6498    时间: 2023-11-7 21:54
学习学习
作者: junyee    时间: 2023-11-8 10:18
批处理命令有字符限制。
` 8192 characters command line limit`

我试了下本地 ProductPolicy 值有 40KB.




作者: junyee    时间: 2023-11-8 10:49
  1. REG QUERY "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\ProductOptions" /v ProductPolicy|find /i "ProductPolicy

  2. REG QUERY "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\ProductOptions" /v ProductPolicy
复制代码



加了find 管道后,偷出被截断了一大部分。
你可以通过 执行两条命令明显看到, 没加find 的输出花费更多得时间 显示在控制台界面上。
作者: yjqd    时间: 2023-11-8 11:08
junyee 发表于 2023-11-8 10:49
加了find 管道后,偷出被截断了一大部分。
你可以通过 执行两条命令明显看到, 没加find 的输出花费 ...

确实如你所说,加find后输出的数值少太多
我将两命令分别输出到文本,没加find输出的文本33.7kb,加find输出的文本3.99kb

当初命令加find输出时,看到命令窗口出现许多数值,就以为全部都查询出来了


但不加find为什么不出现8192个字符呢,却只出现项名:HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\ProductOptions
至少也该出现点ProductPolicy的数据吧
作者: junyee    时间: 2023-11-8 12:35
yjqd 发表于 2023-11-8 11:08
确实如你所说,加find后输出的数值少太多
我将两命令分别输出到文本,没加find输出的文本33.7kb,加find ...

见我第6层的回贴!

echo %%a

%%a 展开后超过 ` 8192 characters command line limit` 了。
作者: 无犹启动    时间: 2024-2-14 12:41
学习学习
作者: tilltotell007    时间: 2024-2-18 20:09
学习了
作者: dos时代菜鸟    时间: 2024-2-18 21:54
相当于传递成文件,再 type 。




欢迎光临 无忧启动论坛 (http://wuyou.net/) Powered by Discuz! X3.3