回复 2# apang - @echo off&setlocal enabledelayedexpansion
- for /f "delims=" %%a in ("executable REG_SZ C:\Program Files\a\a.exe") do (
- set "str=%%a" ::给str赋值
- set "str=!str:*reg_sz=!" ::分割Reg_SZ之前的字符并重新赋值给str
- for /f "tokens=*" %%b in ("!str!") do echo %%~dpb ::这段就不清楚了,看起来像是把str的值传递给b,然后显示出来,那a.exe是怎么去掉的呢?这个地方b的值难道不包含c:\Program files?后面为什么要用延迟扩展
- )
- pause
复制代码 好多不明白啊,这样理解有对的地方吗? |