![如何在 Windows 10 中的批处理文件中删除 %~dp0 末尾的空格](https://linux22.com/image/1542722/%E5%A6%82%E4%BD%95%E5%9C%A8%20Windows%2010%20%E4%B8%AD%E7%9A%84%E6%89%B9%E5%A4%84%E7%90%86%E6%96%87%E4%BB%B6%E4%B8%AD%E5%88%A0%E9%99%A4%20%25~dp0%20%E6%9C%AB%E5%B0%BE%E7%9A%84%E7%A9%BA%E6%A0%BC.png)
我有这个批处理文件:
set LOCAL_ROOT="%~dp0"
setx BOOST_ROOT "%LOCAL_ROOT%\boost"
当我运行这个批处理文件时,我将此值设置为 BOOST_ROOT
BOOST_ROOT=D:\Local\ boost
如您所见,路径中有一个不应该存在的空格。我该如何删除它?
答案1
这是你所需要的:
@echo off
set LOCAL_ROOT=%~dp0
setx BOOST_ROOT="%LOCAL_ROOT%boost"
REM the next two lines are for debugging, remove from final batch file:
echo %BOOST_ROOT%
pause
或者,根本不声明第一个变量:
@echo off
setx BOOST_ROOT="%~dp0boost"
声明时不需要引号LOCAL_ROOT
,并且您的代码似乎有一些格式错误。请记住,%~dp0
包含尾随反斜杠。