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
4

1 回答 1

2

我同意 Endoro。也许是 %1 中有空格的时候。为了适应您应该进行这些更改:

set "FOLDER=%~1"

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

echo %FOLDER%
于 2013-06-30T20:12:18.540 回答