我有2个(可能更多的未来)批处理文件层,这使我的生活更轻松,直到我尝试添加带有空格的路径.
批处理文件1:
@echo off
set thinga=c:\final build
set thingb=\\server\deployment for final buil
echo.
echo thing a: %thinga%
echo thing b: %thingb%
echo.
call lala.bat "%thinga%" "%thingb%"
Run Code Online (Sandbox Code Playgroud)
批处理文件2(lala.bat):
@echo off
echo.
echo. Param 1 %1
echo. Param 2 %2
echo.
set BASE=%1
set TARGET=%2
echo. Want to run:
echo. doSomethingOnBaseFolder %BASE%
echo. doSomethingOnBaseSubFolder "%BASE%\bin\release\*" "%TARGET%\"
echo.
Run Code Online (Sandbox Code Playgroud)
这个输出是:
doSomethingOnBaseSubFolder ""c:\final build"\bin\release\*" ""\\server\deployment for final buil"\"
Run Code Online (Sandbox Code Playgroud)
但我想要输出
doSomethingOnBaseSubFolder "c:\final build\bin\release\*" "\\server\deployment for final buil\"
Run Code Online (Sandbox Code Playgroud)
有没有办法以任何其他方式逃离这个空间?
Hel*_*ein 14
使用以下语法:
set VAR="%~1"
Run Code Online (Sandbox Code Playgroud)
%〜1是没有引号的第一个参数,然后在它周围加上引号以正确处理其中带有空格的路径.就像那样,你总是在安全的一面.