我通常在linux环境中工作,并让Makefile编译我的项目。在makefile中它创建目录。当我在Windows上使用这个makefile时,路径中有空格,因为用户名是" John Doe"。
我尝试过的是:
MAKEPATHCMD = mkdir
build:
@( \
echo -e "Building...\n"; \
$(MAKEPATHCMD) "$(NEW_PATH)"; \
.
.
.
错误低于......
/usr/bin/mkdir: cannot create directory '/c/Users/John Doe/Desktop/new': No such file or directory
我尝试过的其他事情:
$(MAKEPATHCMD) "\"$(NEW_PATH)\""; \
$(MAKEPATHCMD) "'$(NEW_PATH)'"; \
如何在Windows上创建包含空格的makefile创建目录路径?
答案 0 :(得分:0)
在不包含空格的目录中进行工作,例如c:\ work。
或者,通过将目录名转换为"短名称"来消除目录名中的空格。
使用以下脚本:
rem Pass path to sanitize as arg 1
@echo off
echo Original path=[%~1]
call :chkspaces "%~1"
if /I NOT "%_sp%" == "%~1" call :shrt "%~1"
echo uglified=[%_sp%]
goto :EOF
:chkspaces
set _sp=%1
set _sp=%_sp: =%
goto :EOF
:shrt
echo arg=[%1]
set _sp=%~s1
goto :EOF
这将为您的目录生成一个简短的名称。然后只有cd
那里。