回答:
for %a in (*) do ren "%a" "00_%a"
ノート:
for
上記のように使用することはお勧めしません。cmd
シェルで以下を使用します。
for /f "tokens=*" %a in ('dir /b') do ren "%a" "00_%a"
バッチファイルでは(置き換え%
て%%
):
for /f "tokens=*" %%a in ('dir /b') do ren "%%a" "00_%%a"
注意:
単純ではなく、使用することが重要です。
FOR /F
FOR
FOR /F
ギャザー結果全体DIR
のコマンドには、単純なのに対し、反復処理を開始する前にFOR
内部バッファがいっぱいになった後に、同じファイルを複数回名前変更のリスクを追加した、反復処理を開始します。
複数のファイル名の最後に「テキスト」を追加するための彼の答えでdbenhamがアドバイスしたように:
このForループをファイルではなくフォルダー(ディレクトリ)で実行するには、/D
スイッチを含めるだけです。
for /D %a in (*) do ren "%a" "00_%a"
からfor /?
:
FOR / D%variable IN(セット)DOコマンド[コマンドパラメータ]
If set contains wildcards, then specifies to match against directory names instead of file names.
ren
フォルダで機能します。制限は、あなたがターゲットに別のドライブまたはパスを指定することはできません」ということです。
Ren
。
for /d
、値を複数回処理しようとする問題もあるのではないかと思います(私の回答も参照してください)。