• 締切済み

バッチファイルでのフォルダ日付整理

バッチファイルを使って、カメラ写真フォルダ内の多くのフォルダを年月ごとにまとめたいと考えています。 たとえば今のフォルダは、 2008-01-01 2008-01-02 ・・・・・のように日ごとに分かれています。 たとえばこれを、 2008-01 ┳2008-01-01       ┣2008-01-02       ・・・・・・ 2008-02 ┳2008-02-01       ┣2008-02-02       ・・・・・・ と、yyyy-mmで分けたフォルダを作成→該当年月フォルダに移動したいのです。 これをバッチファイルで一発でMD→MOVEするためにはどういったバッチファイルを作ればよいでしょうか? 現在フォルダ以内には2000-08-XXから、現在までの日付分けしたフォルダがあるフォルダにぎっちり入っています。 OSはWinXPを使用しています。 よろしくお願いします。

みんなの回答

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.2

for /f "delims=- tokens=1-3" %%A in ('dir /b') do (if not exist %%A-%%B (mkdir %%A-%%B) & move %%A-%%B-%C %%A-%%B\%%A-%%B-%%C) でいけるかもしれんしだめかもしれん.

shimeji
質問者

お礼

早速の回答ありがとうございました。 私のやり方が悪いのか?うまくいきませんでした。 しかし、勉強になりました。ありがとうございました。

回答No.1

---mm.bat--- @echo off md %1-%2 move %1-%2-* %1-%2 ------------ ---yy.bat--- @echo off for %%f in (01 02 03 04 05 06 07 08 09 10 11 12) do call mm.bat %1 %%f ------------ cdコマンドでカレントディレクトリに移動して、以下 yy 2008 yy 2009 mm 2010 01 mm 2010 02 mm 2010 03 の5行を、コマンドプロンプトで手で打ち込む(データが2010年の3月まである場合)

shimeji
質問者

お礼

ありがとうございました。 この操作でいけそうです。 ファイル数が多いため、寝ている間にできたら・・・と思っていまして、1回の操作でできたらよかったです。(教えていただいたのにすみません・・・) 助かりました。ありがとうございました。