0

一連のファイルの名前を変更しようとしていますが、手動またはバッチ スクリプトで変更できます。バッチ スクリプトは非常に簡単です。

フォルダー内のすべてのファイルの名前を姓 + インデックスに変更するスクリプトが必要です。したがって、出力は sample1.exe のようになり、sample は姓で、インデックスは 1 です。重複を避けるために、各ファイルに名前を付けるたびにこのインデックスをインクリメントする必要もあります。私はグーグルを検索しましたが、これらのいずれかをまとめるのに十分な知識がありません. 誰か提案はありますか?

4

1 に答える 1

1

ファイル名!に名前が含まれない場合、

@echo off
setlocal enableDelayedExpansion
set "surname=surname"
set "index=0"
for %%F in (*) do (
  set /a "index+=1"
  ren "%%F" "!surname!!index!%%~xF"
)

ファイル名に次が含まれる可能性がある!場合

@echo off
setlocal disableDelayedExpansion
set "surname=surname"
set "index=0"
for %%F in (*) do (
  set "old=%%F"
  set "ext=%%~xF"
  set /a "index+=1"
  setlocal enableDelayedExpansion
  ren "!old!" "!surname!!index!!ext!"
  endlocal
)
于 2012-05-30T20:05:36.863 に答える