我有一个批处理脚本,它创建一个名为 New_Folder 的文件夹以及其中的一些子目录和文件。目前,如果我需要创建多个 New_Folder,我必须重命名该批处理创建的每个 New_Folder,然后才能再次运行它并创建一个新文件夹。我想做的是批量检查并查看 New_Folder 是否已存在,如果存在,则将 New_Folder 增加一个数字。所以我有 New_Folder、New_Folder1、New_Folder2 等等。
我该怎么做呢?我见过的用于在批处理脚本中增加内容的解决方案似乎不适用于我的情况,并且除了我为自己的代码复制/粘贴的内容之外,我对批处理脚本一无所知。
这是一个永远有效的解决方案,即使数字存在差距。文件夹编号始终比当前最大编号大 1。
@echo off
setlocal enableDelayedExpansion
set "baseName=New_Folder"
set "n=0"
for /f "delims=" %%F in (
'2^>nul dir /b /ad "%baseName%*."^|findstr /xri "%baseName%[0-9]*"'
) do (
set "name=%%F"
set "name=!name:*%baseName%=!"
if !name! gtr !n! set "n=!name!"
)
set /a n+=1
md "%baseName%%n%"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)