こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

ファイルの拡張子を一括変換したい

コマンドプロンプトでAというフォルダの中にあるファイルの拡張子を別の文字に置換したい。

BAT実行や、BATにドロップする程度の操作でファイル名置換したいと思っています。さすがに100個単位のファイルを1つずつリネームするのは骨が折れるので。

たとえば、「abc.exe.txt」というファイルを
「abc.exe」と言うファイル名に置換させたいです。

少しかじっただけですが作った物を

echo off
for %%A in (*.exe.txt) do call :sub %%A

:sub
set A=%1
ren %A% %A:.exe.txt=.txt%

:end
rem pause

しかしファイル名の置換はできませんでした。
あとAというフォルダ限定で実行させたいのですがパスを指定しないと全部のファイルに反映されそうで怖いです、良ければそれも回答お願いします。

解決策がありましたらご教授願います。

投稿日時 - 2012-10-21 00:18:27

QNo.7758451

困ってます

質問者が選んだベストアンサー

以下のバッチファイルに目的ファイル(複数でもOK)をドロップしてください。


@echo off
:LOOP
if "%~1" == "" goto :EOF
ren "%~1" "%~n1"
shift
goto LOOP

投稿日時 - 2012-10-21 00:49:18

お礼

初心者なので全く理解できませんでしたがやってみたら出来ました、ありがとうございました

投稿日時 - 2012-10-23 02:08:28

ANo.2

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

リネームソフトを使うのが簡単。Flexible Renamerが有名です。
http://hp.vector.co.jp/authors/VA014830/FlexRena/

投稿日時 - 2012-10-21 00:35:00

お礼

リネーム用のソフトなんてあるんですね、ありがとうございます

投稿日時 - 2012-10-23 02:09:05

あなたにオススメの質問