1

のような名前のファイルがいくつかあります

Image 1.jpg
Image 2.jpg
Image 10.jpg
Image 11.jpg
Image 20.jpg

それらは私が表示したい正確な順序で番号が付けられていますが、ウィンドウは、私がdir

Image 1.jpg
Image 10.jpg
Image 11.jpg
Image 2.jpg
Image 20.jpg

これらがアニメーションのフレームであると想定された場合、アニメーションは基本的に間違った結果になります。

数字を 0 で埋めたいと思います。文字列の形式は常に同じです

PREFIX NUMBER.EXT

ファイル名をパディングして取得するにはどうすればよいですか

Image 0001.jpg
Image 0002.jpg
Image 0010.jpg
Image 0011.jpg
Image 0020.jpg

これが私がこれまでに行ったことです

echo off
Setlocal EnableDelayedExpansion

rem note the extra space at the end of "Image "
set prefix=Image 
for %%F in (*.jpg) do (
  set a=%%F
  rem // strip the prefix
  set a=!a:%prefix%=!
  echo !a!
)

これにより、プレフィックスが削除されます。次に、結果のファイル名を先頭の文字 0 で埋めてから、ファイルの名前を変更します。

4

1 に答える 1