|
|
- @echo off
- SetLocal EnableDelayedExpansion
- set ProductName=EditPlus 3
- set Namespace=EPP
- call set "%Namespace%_CMD_ARG= -i "F:\Users\.config\EditPlus 3""
- call set "%Namespace%_CONFIG_FILE=F:\Users\.config\EditPlus 3\EditPlus.ini"
- call set "%Namespace%_DATA_PATH=F:\Users\.config\EditPlus 3"
- call set "%Namespace%_DIRECTORY=D:\Program Files\EditPlus 3"
- call set "%Namespace%_Elevate=0"
- call set "%Namespace%_Executable=EditPlus.exe"
- call set "%Namespace%_FOLDER=EditPlus 3"
- call set "%Namespace%_HOME=D:\Program Files\EditPlus 3"
- call set "%Namespace%_REG_KEY=HKCU\Software\ \EditPlus 3"
- call set "%Namespace%_RUNTIME=D:\Program Files\EditPlus 3"
- for /f "tokens=1* delims==" %%i in ('set %%Namespace%%') do (
- set "Variable=%%i"
- set "Value=%%j"
- rem 这句命令能正确执行替换,但是替换部分不能为%号,就是说命令中的#不能为带百分号的字符。
- call call echo set "Value=%%%%Value:%%%Namespace%_DATA_PATH%%=#%%%%"
- call echo set "^!Value:%%%Namespace%_DATA_PATH%%=%%%%%Namespace%_DATA_PATH%%%%^!"
- rem 疑问: 为什么下面的命令没有做替换
- call echo set "!Value:%%%Namespace%_DATA_PATH%%=%%%%%Namespace%_DATA_PATH%%%%!"
- )
- pause
- EndLocal
复制代码 |
|