Variables 变量的批路径替换

Variables 变量的批路径替换,variables,batch-file,filepath,substitution,Variables,Batch File,Filepath,Substitution,我如何才能进行与您在%0上相同的替换%9,(如%~dp0)但在变量上 例如: set MYVAR = %* echo %~dp{%MYVAR%} <--- how to do that ? set MYVAR=%* echo%~dp{%MYVAR%}简短回答:你不能 回答不那么简单:你可以用一个小技巧: set "myvar=C:\any folder\subfolder\my file.ext" for %%i in ("%myvar%") do echo %%~dpi, %%~ni

我如何才能进行与您在
%0
上相同的替换<代码>%9,(如
%~dp0
)但在变量上

例如:

set MYVAR = %*
echo %~dp{%MYVAR%}  <--- how to do that ?
set MYVAR=%*

echo%~dp{%MYVAR%}简短回答:你不能

回答不那么简单:你可以用一个小技巧:

set "myvar=C:\any folder\subfolder\my file.ext"
for %%i in ("%myvar%") do echo %%~dpi, %%~ni

for
用于将
%variable%
转换为
%variable
%variable
在批处理文件中)

您应该注意,
set
也可以在
for do
循环中使用,
set MYVAR=%*
将变量
%MYVAR%
而不是
%MYVAR%
设置为以空格开头的值`