1
Как я могу сделать ту же замену, что и вы, на %0
.. %9
, (например, %~dp0
), но на переменной?Замена парного пути на переменные
пример:
set MYVAR = %*
echo %~dp{%MYVAR%} <--- how to do that ?
Как я могу сделать ту же замену, что и вы, на %0
.. %9
, (например, %~dp0
), но на переменной?Замена парного пути на переменные
пример:
set MYVAR = %*
echo %~dp{%MYVAR%} <--- how to do that ?
Короткий ответ: Вы не можете.
не так короткий ответ: вы можете сделать это с помощью маленькой хитрости:
set "myvar=C:\any folder\subfolder\my file.ext"
for %%i in ("%myvar%") do echo %%~dpi, %%~ni
for
используется для преобразования %variable%
до %variable
(%%variable
внутри batchfiles)
Вы должны, возможно, отметить, что 'set' также может использоваться в цикле' for do'. –
более срочно отметить, что 'set MYVAR =% *' устанавливает переменную '% MYVAR%' вместо '% MYVAR%' - для значения, которое начинается с пробела. ' – Stephan