我正在编写一个批处理脚本,需要检查计算机上是否安装了某些程序。为此,我执行programName --version
并将输出存储在变量中。问题在于当我尝试与正则表达式进行比较时(只是为了知道这个程序是否存在于计算机中),代码不起作用。
>output.tmp node --version
<output.tmp (set /p hasNode= )
if "%hasNode%" == "[vV][0-9.]*" (echo Has node) else (echo You have to install node)
如果我更改此命令的输出的正则表达式,那么它可以正常工作,因此我认为我在使用正则表达式方面存在问题(我已经检查过,对于该命令的输出来说,它是正确的)。谢谢您的帮助。