代码:
for /f "tokens=2*" %%a in (' REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Web Start\1.0.1" /v Home') do set JavaPath=%%b
输出:
C:\Program Files\Java\jre8\bin
问题:我们可以在这个路径中添加 x86 吗(例如它指向的)C:\Program Files (x86)\Java\jre8\bin
?
我尝试使用
for /f "tokens=* delims=\J" %%a in ( %JavaPath% ) do set path_temp = %%b
但是我收到错误,系统找不到文件 C:\Program。
答案1
[测试.bat]
@echo off
setlocal
set JavaPath=C:\Program Files\Java\jre8\bin
echo Before: %JavaPath%
for /f "tokens=1,2* delims=\" %%a in ("%JavaPath%") do set JavaPath=%%a\%%b (x86)\%%c
echo After: %JavaPath%
即我们用作\
分隔符。因此,第一个标记C:
设置为变量%%a
,Program Files
设置为变量%%b
,尾部设置Java\jre8\bin
为变量%%c
。然后我们将它们重新连接起来,添加两个分隔符(它们在解析过程中被删除)和<space>(x86)
子字符串。