2013-06-30 99 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,我自己試了一下,看起來沒有用。我想我必須犯一個錯字。 –