@echo off&setlocal enabledelayedexpansion
set "str1=/usr/include"
set "var1=/usr/include"
set "var2=/copy/sys/include"
call set str1=%%str1:!!var1!=!var2!%%
echo %str1%
pause
"/" 在批处理中也不算什么特殊符号.
@echo off&setlocal enabledelayedexpansion
SET "var1=/usr/include"
SET "var2=/copy/sys/include"
Set "star=/usr/include123"
set "star=!star:%var1%=%var2%!"
echo %star%
pause
套上变量的话只要加上变量延迟,外围用!,里面和调用变量一样就行了
正确的写法是
call set "str1=%%str1:!ver1!=!ver2!%%"
如果还是不行,最好把原bat贴出来,不要认为别的没问题