批处理reg query里findstr 如何按照变量名称查找(如查找path里有没有"%JAVA_HOME%")
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了批处理reg query里findstr 如何按照变量名称查找(如查找path里有没有"%JAVA_HOME%")相关的知识,希望对你有一定的参考价值。
2003 r2 enterprise
我在环境变量里设置mysql_HOME值是C:\MySQL
path里设置加的值是%MYSQL_HOME%\bin
(以上均已生效)然后批处理
reg query "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v path|findstr "XXXXXXXXX"&&echo yeah||echo nono
XXXXXXXXX这里我用过MYSQL,%MYSQL_HOME%,%%MYSQL_HOME%%
查询返回的都是nono
提示错误:有更多数据可用
有解决方法吗?
用户变量的注册表位置是 HKEY_CURRENT_USER\Environment 参考技术B 先不要加findstr看一下你的path中出来的是什么,然后再加上findstr /i,注意这个/i参数。追问
貌似也是错误:有更多数据可用
难道path里不能用变量名?
我注册表里的path是C:\;C:\windows;C:\windows\system32;\C:\windows\system32\wbem;\%MYSQL_HOME%\bin
Windows自己在默认的path环境变量中都没有将windows目录替换为%windir%,这是其一。另外,环境变量的初始化是有先后顺序的,你自己设置的环境变量可能比path变量初始化的晚,这会不会有问题,你需要自己试验一下。
其实很简单,你在path环境变量中使用你自己设置的变量,然后随便打开一个cmd窗口,执行你环境变量指向目录里的可执行程序,只要能够找到,就说明这样设没有问题。
以上是关于批处理reg query里findstr 如何按照变量名称查找(如查找path里有没有"%JAVA_HOME%")的主要内容,如果未能解决你的问题,请参考以下文章