私のifステートメント(forループ内)が協力していないように見えるという問題があります。私がやろうとしていることはこれです:
- 一連のzipファイルをループして、それらの名前を005.zip、006.zip、007.zipなどに変更します。
- ファイル番号を決定する5から始まるカウンターと、005、006などを取得するための00のプレフィックスを保持します。
- カウンターが10に達したら、プレフィックスを00ではなく0にします。したがって、カウンターが10の場合、そのファイルの名前は010.zipになり、0010.zip、0011.zipなどの代わりに011.zipになります。
これが私がこれまでに持っているものです:
setlocal enableextensions enabledelayedexpansion
SET /a COUNT=5
SET FILE_PREFIX=00
SET /a MAX=10
for %%f in (*.zip) do (
if !COUNT! == !MAX! (set FILE_PREFIX=0)
ren "%%f" %FILE_PREFIX%!COUNT!.zip
set /a COUNT+=1
echo !COUNT!
)
endlocal
ifステートメントが機能しないのはなぜですか?ファイルの名前変更は正常に機能しています。FILE_PREFIXを0に変更しないifステートメントだけです。