2016-10-27 8 views
-2

私は12468ファイルを持っています。59の間隔でファイルを削除

これを効果的に行うには、59個のファイルを削除し、1個をスキップし、59個以上を削除したり、削除したり、別の方法を削除したりするにはどうすればよいですか。

ファイルの例:sequence_00001.jpg、sequence_00002.jpg、----シーケンス12468.jpg等...このバッチコードはように59個のファイルを削除して、第60回1を維持し、

+1

JavaScriptとは何が関係していますか? –

+0

ファイル名の例が必要です。 Windowsエクスプローラーと同じようにバッチファイルでもファイルはソートされません。 – Squashman

+0

sequence_xxxxx.jpg – epicdig07

答えて

1

。このバッチコード処理ファイルは、この形式で

@echo off 
setlocal EnableDelayedExpansion 

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

:ファイルは、独立して、ファイル名の形式のdirコマンド(つまり、プレーンforコマンドのと同じ順序である)、のと同じ順序でを処理している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" 
) 
+0

Worked !!!ありがとう!!!!!! – epicdig07

関連する問題