• 締切済み

このようなフォルダ名の一括置換をするには?

次のように、途中の@を空白に置換して末尾に@を付け直す処理です。 "200805@Athletic Meet" → "200805 Athletic Meet@" 私の場合、 dir /b "*@*" > list.txt として、結果をテキストエディタで次のような形式に一括編集。 ren "200805@Athletic Meet" "200805 Athletic Meet@" で、バッチファイルとして実行。 ---- もっと簡単な手順はありますでしょうか? ren "*@*" "*@" ・・・これじゃダメですしね。。。。

みんなの回答

  • pita-gora
  • ベストアンサー率70% (102/145)
回答No.2

IVmさんこんにちは。 バッチファイルを作ってみました。一括置換したいフォルダにこのバッチをおいて実行してみてください。 :@echo off for /F "delims=" %%f in ('dir /b /a:d *@*') do call :sub "%%~nxf" exit /b :sub set f=%~1 set fname=%f:@= %@ ren %1 "%fname%" goto :EOF

noname#182652
質問者

お礼

こんなに複雑なバッチファイルコマンドは私は作ったことがなくて、解析に時間がかかりそうです。 取り急ぎお礼です。 ありがとうございました。

回答No.1

コマンドではないですが、 ファイ名を一括で置き換えるフリーソフトを利用して、 簡単にファイル名の変更ができます。 私はallrename(オールリネーム)というソフトを利用しています。 http://www.vector.co.jp/soft/winnt/util/se156290.html 名前を変えたいフォルダをドラッグ&ドロップし、 置換 @ を (空白) に 実行 次に変更したものをもう一回ドラッグ&ドロップし、 文字追加 @ 実行 でまとめて変更できます。

noname#182652
質問者

お礼

参考情報ありがとうございます。

関連するQ&A