跳过IF文件夹名称包含" zyx"

时间:2014-06-23 20:09:49

标签: batch-file

下面的代码效果很好,它会找到最新创建的文件夹并添加" - ESP"在它结束时,例如文件夹TEST123TEST123 - ESP

但是,如果脚本因任何原因再次被执行,该文件夹看起来像TEST123 - ESP -ESP

我们的想法是检查最新文件夹名称中是否有ESP

我认为需要IF / ELSE,但我不确定是否需要使用find命令。

FOR /F "delims=\" %%i IN ('dir /b /ad-h /o-d') DO (
    SET a=%%i
    GOTO :found
)
echo No subfolder found
goto :eof
:found

IF / ELSE应该在这里吗?

echo Most recent subfolder: "%a%"
cd %a%
for %%a in (*) do rename "%%a" "%%~na-%a%%%~xa"
cd ..\
ren "%a%" "%a% - ESP"
pause

1 个答案:

答案 0 :(得分:1)

编辑:

FOR /F "delims=\" %%i IN ('dir /b /ad-h /o-d') DO (
    SET a=%%i
    GOTO :found
)
echo No subfolder found
goto :eof

:found
echo Most recent subfolder: "%a%"
if  /i "%a:~-3%"=="ESP" goto:next
cd %a%
for %%a in (*) do rename "%%a" "%%~na-%a%%%~xa"
cd ..\
ren "%a%" "%a% - ESP"
pause
exit /b

:next
echo done

这将检查文件夹的最后3个字符。