稍微改变批处理文件中使用的路径

稍微改变批处理文件中使用的路径

请关注在批处理文件中使用注册表中的路径

代码:

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:设置为变量%%aProgram Files设置为变量%%b,尾部设置Java\jre8\bin为变量%%c。然后我们将它们重新连接起来,添加两个分隔符(它们在解析过程中被删除)和<space>(x86)子字符串。

相关内容