如何修改Windows命令行脚本去除Java版本检查的空行与无效输出
解决Windows Java版本检查脚本的冗余输出问题
嘿,我懂你现在的困扰——这个检查Java版本的脚本输出了一堆多余内容,空行、奇怪的命令提示符行都冒出来了,只想要干净的Current Java Version提示和版本号对吧?咱们来调整一下命令:
原来的命令开了两个独立的cmd.exe进程,而且第二个命令里的写法不小心触发了多余的回显。直接用单条cmd命令把两个操作合并,同时调整for循环的处理逻辑就能解决:
C:\Windows\system32\cmd.exe /c "echo Current Java Version & for /f "tokens=3 delims=\"" %g in ('java -version 2^>^&1 ^| findstr /i "version"') do @echo %g"
关键改动说明:
- 把两个
cmd.exe调用合并成一个,用&连接两个命令,避免额外进程带来的输出干扰 - 给
for循环添加delims=\""参数,精准提取带引号的版本号内容(如果你想要不带引号的版本号,可以把delims=\""改成delims=",然后输出@echo %~g) - 确保
@echo %g的写法只输出版本号本身,不会带出多余的命令行信息
修改后运行的输出就会是:
Current Java Version
"1.7.0_161"
完全没有多余的空行和奇怪的命令提示符行啦!
内容的提问来源于stack exchange,提问作者BV45
相关产品推荐
相关产品推荐

