• 締切済み

複数ファイルの一括名称変更

ファイル名が1234_200812061.datという形式になっているファイルが大量にあります。このファイル名の先頭部分1234_を削って後半部分200812061.datだけの名称に変更したいのです。 renコマンドを使ってもうまく行かないので恐らくバッチファイルでfor文などを使って処理できると思うのですが、うまく行きません。私が作ったバッチでは for /f "skip=5" %%A in (*.dat) do ren *.dat %%~nA.dat のように処理しているのですが、うまく行かないようです。 どなたかご教授していただけますでしょうか。

みんなの回答

  • pasocom
  • ベストアンサー率41% (3584/8637)
回答No.1

フリーソフトの「ファイル名変更君」でいかがでしょうか。 http://www.vector.co.jp/soft/win95/util/se397494.html

satuki1969
質問者

お礼

回答ありがとうございます。 ただ私としてはできればバッチファイルで処理したいと考えています。

satuki1969
質問者

補足

似た質問があり、そこで解決できました。 お騒がせしました。 http://okwave.jp/qa3557441.html

関連するQ&A

  • MSDOSからワイルドカード指定で複数ファイル名の一部を一括変更

    MSDOSからワイルドカード指定で複数ファイル名の一部を一括変更する方法はありますでしょうか? 例えば、 「a.dat.gz」「b.dat.gz」「c.dat.gz」 上記のような複数ファイルを以下のように変更したいと思っています。 「a.gz」「b.gz」「c.gz」 ちなみに次のコマンドを試してみたのですがダメでした。 ren *.dat.gz *.gz 実際はバッチファイルから処理をさせたいと思っています。 よろしくお願いいたします。

  • 一括で、画像のファイル名の頭4文字を削除したい

    一括で、画像のファイル名の頭4文字を削除したいと思っています。 拡張子はJPGになります。 現在、コマンドプロンプトで、下記のようにコマンドを作っていますが、 プログラムが不慣れで、どこが、間違っているのかが、 ご教授いただけますでしょうか。 for %F in (*) do ren "%F" "%~nF" for %F in (*) do ren "%F" "%F"

  • 【コマンドプロンプト】複数フォルダのファイル名一括置換の方法について

    【コマンドプロンプト】複数フォルダのファイル名一括置換の方法について お世話になっております。 コマンドプロンプトを使用して、カレントフォルダ配下のすべてのフォルダに格納されているEXCELファイルの名称の最初に[LOCAL]という文字を加えたいと考えています。 ファイル一括置換を行うフリーソフト(ファイル名変換君など)では、可能なのですが、 対象のファイルは、バッチファイルで他のフォルダからファイルをコピーをしてきているため、ファイル名変更もコピーの際に一括でできないかと思い質問をさせていただきました。 現在、同じフォルダに格納されているファイルに対しては、下記にて実行はできています。 for %i in (*.xls) do ren %i [LOCAL]%i しかし、カレントフォルダの配下すべてのフォルダを対象にしたいため、下記のように変更すると、エラーとなってしまいます。 for /r %i in (*.xls) do ren %i [LOCAL]%i おそらく・・・変数%iに、ファイルのフルパスが格納されてしまい、思い通りの動作になっていないと推測しています。 どのように作成すればよいか教えていただけませんでしょうか。 よろしくお願いいたします。

  • コマンドプロンプトでファイル名一括変更

    コマンドプロンプトのrenコマンドでフォルダ内の同一拡張子のファイル名の拡張子を一括変更することはできますが、 (例 ren *.txt *.htm ) 拡張子以外の共通部分を拡張子を含む形で一括変更することはできませんか? たとえば拡張子のないd01という文字列で終わるファイル名を一括してd01の部分を消して拡張子を.jpgにしたいのです。

  • コマンドプロンプトによるファイル名一括変換

    コマンドプロンプトで、サブディレクトリを含めたファイル名の一括変換 をしたいのですが、次のコマンドを叩いたら、「コマンドの構文が間違っています」と出てしまいました。どこがおかしいのでしょうか? カレントディレクトリの中の「*.txt」ファイルをすべて「*.doc」にしたい場合↓ for /r /d %i in (*) do ren %i\*.txt *.doc よろしくお願いします。

  • サブフォルダ内含め全てのファイル名を一括置換するw

    サブフォルダ内含め全てのファイル名を一括置換するwindowsバッチ処理について ファイル名の「YYYYMM」部分を一括で変換したく以下の様なバッチ文を記載しました。 しかし置換処理がうまくいかず、ファイル名の後ろに入力文字列がくっついてしまいます。 set /p YYYYMM="年月を入力してください(yyyymm形式):" echo %YYYYMM% for /r %%f in ( * ) do call :sub %%f %YYYYMM% pause exit /b :sub echo %2 set fname=%~nx1 set fname=%%fname:YYYYMM=%2%% echo %fname% ren %1 %fname% goto :EOF 環境上、ファイル名リネームソフトやWindows Powershellを使うことができないため、何とかバッチ処理で楽をしたいのですがかなり煮詰まってしまい。。。 どなたかアドバイスをお願いできないでしょうか。 よろしくお願いいたします。

  • バッチファイルでファイル名に文字列を挿入したい。

    フォルダにあるファイル全てに対して、ファイル名の先頭に文字列を挿入するバッチファイルを作っています。 対象のファイルは、主にエクセル、ワード、パワーポイント、PDFですが、ファイルの種類に関係なく、全てのファイルに対して、ファイル名の先頭に文字列を挿入したいです。 @echo off for %%i in (*) do ren "%%i" "【文字列】%%i" pause として文字列の挿入自体はできました。 しかし、このファイルを2回実行すると、ファイル名の先頭に【文字列】【文字列】と重複して挿入されてしまうので、すでに挿入済みのファイルに対しては実行しないようにしたいのですが、うまくいきません。 また、サブフォルダ内にあるファイルに対しても同様の処理を適用したいです。 どのように記述すればよいでしょうか。 リネームソフトを使えればよいのですが、フリーソフト等はインストールできない環境ですので、できればバッチファイルを記述して対応したいのです。 OSはウインドウズ7です。

  • バッチファイルで全てのファイル名を変更したい

    文字数の決まっていないbmpファイル全ての頭にP_をつける バッチファイルを作成しました。 ↓ FOR %I IN (*.bmp) DO REN %I P_%I ですが、P_が1つだけでなく何個もついてしまいます。 どなたかご教授ください。 よろしくお願いします。

  • バッチファイルでファイル名を一括変更するには

    大変お世話になっております。 windows上で、100個程度のファイル名を、一括で変換するバッチファイルを作りたいのですが、renコマンドの使い方が分かりませんでした。 何方か、お分かりでしたら、ご教示頂けると大変助かります。 ファイル名は、下記の通りになります。 【下記は変更前のファイル名】 235-R2022001978.pdf 2345677-R2022001979.pdf iiii-R2022001980.pdf 896-R2022001981.pdf eee-R2022001982.pdf やりたい事は、各ファイル名の変更後がR以下の文字の名前にすることです。 例えば、『235-R2022001978.pdf』→『R2022001978.pdf』へリネームしたいです。

  • DOSコマンドのforで空白行をスキップしない

    DOSコマンド(バッチ)で、ファイルの4行目から読み込んで順に処理し、 空白行が見つかったらそこで処理ループを抜けて処理を終了させたいのですが、 FOR /Fは空白行を読み飛ばしてしまうため、やりたい事ができません。 FOR /F "SKIP=4" %%A IN (file) DO ( IF "%%A" == "" GOTO :OUT ・・・処理・・・ ) :OUT forで空白行をスキップしないようにするか、代替法があれば教えていただけないでしょうか。 よろしくお願いいたします。