每隔 59 次删除文件

Delete file in 59 intervals

我有 12468 个文件,我只需要每 60 个文件。

我如何(希望是批处理文件)删除 59 个文件、跳过一个、再删除 59 个、删除一个等或其他有效执行此操作的方法。

文件示例:sequence_00001.jpg、sequence_00002.jpg、----序列12468.jpg等...

此批处理码删除59个文件,保留第60个,以此类推。文件的处理 dir 命令 的顺序相同(即普通 for 命令的相同顺序),与文件名格式无关:

@echo off
setlocal EnableDelayedExpansion

set i=0
for %%a in (*.jpg) do (
   set /A "i=(i+1)%%60"
   if !i! neq 0 del "%%a"
)

本批号处理格式为sequence_00001.jpgsequence_00002.jpg等的文件,保留后5位为60的倍数的文件;删除其余部分:

@echo off
setlocal EnableDelayedExpansion

for /F "tokens=1,2* delims=_." %%a in ('dir /A-D /B sequence_*.jpg') do (
   set /A "i=(1%%b-100000)%%60"
   if !i! neq 0 del "%%a_%%b.%%c"
)