Batch file 按数据值搜索注册表,然后通过批处理导出
我正在尝试制作一个scrip,它将在根键中搜索值的数据,然后导出所有结果。当使用Batch file 按数据值搜索注册表,然后通过批处理导出,batch-file,registry,Batch File,Registry,我正在尝试制作一个scrip,它将在根键中搜索值的数据,然后导出所有结果。当使用for语句时,我不确定如何导出结果。我正在使用pipe/s | find搜索值的数据。任何建议或提示将不胜感激 有关密钥的信息: @for %%I in ('reg query "HKLM\SYSTEM\ControlSet001\Enum" /v "ClassGUID" /s | find "{4d36e967-e325-11ce-bfc1-08002be10318}"') do (reg export %%~I
for
语句时,我不确定如何导出结果。我正在使用pipe/s | find
搜索值的数据。任何建议或提示将不胜感激
有关密钥的信息:
@for %%I in ('reg query "HKLM\SYSTEM\ControlSet001\Enum" /v "ClassGUID" /s | find "{4d36e967-e325-11ce-bfc1-08002be10318}"') do (reg export %%~I %~dp0export.txt)
Rootkey:HKLM |子键:未知(每台机器的更改,以“\SYSTEM\ControlSet001\Enum\”开头)|值:ClassGUID |数据:{4d36e967-e325-11ce-bfc1-08002be10318}
当前尝试:
@for %%I in ('reg query "HKLM\SYSTEM\ControlSet001\Enum" /v "ClassGUID" /s | find "{4d36e967-e325-11ce-bfc1-08002be10318}"') do (reg export %%~I %~dp0export.txt)
在先前的尝试中
以前-在通过
值
和数据
搜索子键后,我试图获取它的实际路径。由于限制,该位置不是数据类型的一部分
-因此,我现在尝试导出搜索结果。通过搜索文本文档,我可以从中创建一个变量。以下示例脚本用于设置和输出变量,这些变量包含所有注册表项下名为FriendlyName
的字符串值的数据,这些注册表项以HKLM\SYSTEM\CurrentControlSet\Enum\
开头,并且还包含值数据包括GUID字符串,{4d36e967-e325-11ce-bfc1-08002be10318}
@Echo关闭
对于('Set DeviceName[2^>Nul')中的/F“Delims=”%%A,请设置“%%A=”
设置“i=0”
对于/F“EOL=Delims=“%%A In('Reg Query“HKLM\SYSTEM\CurrentControlSet\Enum”^
/S/F“{4d36e967-e325-11ce-bfc1-08002be10318}”/D^查找/I“枚举”
)在('Reg Query“%%A”中设置/A i+=1和/F“跳过=1令牌=2*”%%B^
/V“FriendlyName”2^>Nul')Do Call Set DeviceName[%%i%%]=%%C
设置设备名称[2>Nul
暂停
这段代码太棒了!如果我想添加,有没有办法将示例,%DeviceName[1]
更改为set Name=NewName
。?这是一个很好的脚本,可以列出运行Windows Vista或更新Windows版本的计算机上插入的所有磁盘驱动器(硬盘、USB记忆棒)。