[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[注册表类] 批处理读取注册表的值然后赋值给批处理变量

如题,如何用批处理读取注册表的值然后用set赋值给批处理变量
本人的思路如下,但不可行,请问为什么


先用  reg query 读取注册表某键值(Path)到某文本文档(c:\temp.txt)
然后用   for /f  来读取temp.txt 的指定值  然后赋值

//查询
@echo off
reg query "HKLM\SYSTEM\ControlSet001\Control\Session Manager\Environment" /v Path >c:\temp.txt
pause


//读取并赋值
@echo off
for /f "skip=4 tokens=3 delims= " %%i in (c:\temp.txt) do set /p res=%%i
pause


但是不行  为什么?

set res=%%i
/p参数是错误的

TOP

  1. @echo off
  2. for /f "tokens=2*" %%a in ('reg query "HKLM\SYSTEM\ControlSet001\Control\Session
  3. Manager\Environment" /v Path^|findstr /i "path"') do (
  4.   set "pth=%%b"
  5. )
  6. echo %pth%
  7. echo.&pause
复制代码

TOP

返回列表