2013-06-30 50 views
0

在for循环中,它需要围绕字符串引用以调用(文件夹的)整个长度,但这会在后面的脚本中导致问题。是否有任何方法可以简单地删除引号(如:回声中使用〜1,-1)?变量引号

@ECHO OFF 

set ICOINI=Desktop.ini 

for /D /R "%cd%" %%d IN (*) do (call :Write_File "%%~nd") 

Pause 

goto End_File 

:Write_File 

set FOLDER=%1 

if /I %FOLDER%==Icon goto :EOF 
if /I %FOLDER%==Extras goto :EOF 

echo %FOLDER:~1,-1% 

goto :EOF 

:End_File 
+2

可以使用波浪号'〜'去除双引号:'设置“FOLDER =%〜1”' – Endoro

+0

@Endoro我试图改变设定的文件夹,但到无济于事,它似乎并不奏效。 –

回答

2

我同意Endoro。也许是在%1有空格的时候。以适应你应该做这些改变:

set "FOLDER=%~1" 

if /I "%FOLDER%"=="Icon" goto :EOF 
if /I "%FOLDER%"=="Extras" goto :EOF 

echo %FOLDER% 
+0

谢谢@Endoro,我自己试了一下,看起来没有用。我想我必须犯一个错字。 –