为了获取当前的Office安装路径, 我设置了这一行
reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\WINWORD.EXE"
结果是:
(Default) REG_SZ C:\PROGRA~1\MICROS~1\Office16\WINWORD.EXE
Path REG_SZ C:\Program Files\Microsoft Office\Office16\
useURL REG_SZ 1
SaveURL REG_SZ 1
如何使用" C:\ Program Files \ Microsoft Office \ Office16 \"在一个变量? 感谢。
答案 0 :(得分:0)
如果您运行cmd.exe
,则从reg query /?
开始,有一个突出的特定开关。
/v Queries for a specific registry key values.
If omitted, all values for the key are queried.
查看完整输出时,您非常具体地要求注册表项值Path
通过简单运行:
reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\WINWORD.EXE" /v Path
我们可以减少噪音。
使用该逻辑,这里是批处理,它只使用提取的路径字符串的:
作为分隔符,然后加入%%a
作为C驱动器,%%b
是其余部分:
之后的路径,我们只是用冒号再次加入它们。
@echo off
setlocal enabledelayedexpansion
for /f "tokens=1,2 delims=:" %%a in ('reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\WINWORD.EXE" /v Path') do (
set result=%%a
set result=!result:~-1!
set output=!result!:%%b
)
echo !output!
答案 1 :(得分:0)
只需使用(javascript)正则表达式.:(?!.*:).*
这抓住的是:
.: - Drive letter
(?!.*:) - Not followed by other colons (illegal in Windows paths)
.* - Followed by the path