2016年8月31日水曜日

年月毎にファイルをフォルダに振り分けする方法

写真、ビデオのファイル名を撮影日時にする方法でファイル名を変更した後の処理として、
年月毎にフォルダ振り分けを行うバッチファイルを作成します。

1.バッチファイル作成
以下の内容でバッチファイルを作成します。
ダウンロードはこちら

@echo off
@setlocal enabledelayedexpansion

REM 移動先のルートパス
SET MOVE_ROOT=移動先パス ← 適宜修正。ファイルサーバも指定可能。

REM ファイル移動
for %%F in (%*) do (
 echo 処理開始:%%F
 dir /s /b %%F

 FOR /F "usebackq delims=" %%I IN (`dir /s /b %%F`) DO (
  ECHO ファイル処理開始:%%I
  SET F_NAME=%%~nI
  SET MOVE_DIR_NAME=!F_NAME:~0,6!
  SET /A CONF_F_NAME=!MOVE_DIR_NAME!
  IF "!CONF_F_NAME!" NEQ "!MOVE_DIR_NAME!" (
   ECHO ファイル名がおかしいので処理をスキップします。
  ) ELSE (
   REM ディレクトリ存在確認
   SET MOVE_DIR=!MOVE_ROOT!!MOVE_DIR_NAME!\
   
   REM ディレクトリが存在しない場合作成する
   IF NOT EXIST "!MOVE_DIR!" MKDIR "!MOVE_DIR!"
   
   REM ファイルコピー
   MOVE "%%I" !MOVE_DIR!
  )
 )
)

2.バッチファイル配置
1で作成したバッチファイルを適当な場所に配置します。

これで、バッチファイルにフォルダをドロップすると、フォルダ内の画像、ビデオファイルの
ファイル名が撮影日時に変更されます。
送るメニューにショートカットを登録することで、もっと便利に使うこともできますよ。

■送るメニュー編集手順
https://www.microsoft.com/ja-jp/atlife/tips/archive/windows/tips/305.aspx

0 件のコメント:

コメントを投稿