批处理变量赋值,等号前后一般不加空格。批处理的变量名可以包含空格,变量赋值等号前的空格属于变量名,等号后的空格属于变量值。你的语句 set "bb = %aa:dahui://=%"创建的变量名有三个字符(两个b和一个空格),变量值第一个字符是空格。
setlocal enabledelayedexpansionset aa=dahui://123set bb=!aa:dahui://=!echo !bb!pause