画像ファイルのセットを一括で名前変更する

画像ファイルのセットを一括で名前変更する

私たちは、ここで説明する 6 台のカメラによる昆虫撮影セットアップを使用します。https://osf.io/s2p73/

ワークフローの一部には、画像ファイルの名前を変更してデータベースにインポートできるようにする作業が含まれます。現在、Bulk Rename Utility で複数の「名前変更ペア」手順を使用してこれを実行しており、プロセスを簡素化する単一の DOS バッチ ファイルを探しています。画像は、次のように、初期名 --> 最終名で 2 つのフォルダーに保存されます。毎日、フォルダー 1 には最大 1000 枚の画像があり、フォルダー 2 には対応する 5000 枚の画像が処理されます。

最初の数字は標本を示します (0001/2/3/4/5 など)。下の太字の数字は一意のカタログ番号で、名前の変更時に他の 5 つの画像に転送する必要があります。カタログ番号の後の最後の 2 つの数字は画像セット間で異なる場合があります。

フォルダ 1: 「名前変更」

0001_アリス1-012345678_887856_162658.jpg --> 012345678_887856_162658.jpg

フォルダ 2:「追加」

0001_ALICE2.jpg -->012345678_横方向.jpg

0001_ALICE3.jpg -->012345678_追加_1.jpg

0001_ALICE4.jpg -->012345678_追加_2.jpg

0001_ALICE5.jpg -->012345678_追加_3.jpg

0001_ALICE6.jpg -->012345678_追加_4.jpg

次の画像セットは0002_etcとなり、異なるカタログ 番号転送されます。ご協力いただければ幸いです。

答え1

  • Folder1内の一致するパターンを持つファイルを反復処理する
  • ベースファイル名(%%F-_部分(%%A..%%E)に分割します。
  • %%C..%%EAlice1ファイルの名前を変更するために使用する
  • %%Aスキームに従って他の名前を変更するために使用します

Ramdisk A 上のテスト フォルダー/ファイルの初期ツリー:

> tree a:\ /f
A:\
├───Additional
│       0001_ALICE2.jpg
│       0001_ALICE3.jpg
│       0001_ALICE4.jpg
│       0001_ALICE5.jpg
│       0001_ALICE6.jpg
└───Renamed
        0001_ALICE1-012345678_887856_162658.jpg

このバッチファイル:

:: Q:\Test\2019\03\30\SU_1419303.cmd
@Echo off
set "Folder1=A:\Renamed"
set "Folder2=A:\Additional"

For /f "delims=" %%F in ('
    Dir /B/S/A-D "%Folder1%\????_Alice?-*_*_*.jpg
') Do For /F "tokens=1-5 delims=-_" %%A in ("%%~nF") DO (
    Echo %%~nxF
    Echo %%A %%B %%C %%D %%E
    Ren "%%~fF" "%%C_%%D_%%E%%~xF"

    Ren "%Folder2%\%%A_ALICE2.jpg"  "%%C_lateral.jpg"     
    Ren "%Folder2%\%%A_ALICE3.jpg"  "%%C_additional_1.jpg"
    Ren "%Folder2%\%%A_ALICE4.jpg"  "%%C_additional_2.jpg"
    Ren "%Folder2%\%%A_ALICE5.jpg"  "%%C_additional_3.jpg"
    Ren "%Folder2%\%%A_ALICE6.jpg"  "%%C_additional_4.jpg"
)

この結果になります:

> Q:\Test\2019\03\30\SU_1419303.cmd
0001_ALICE1-012345678_887856_162658.jpg
0001 ALICE1 012345678 887856 162658

> tree a:\ /f
A:\
├───Additional
│       012345678_additional_1.jpg
│       012345678_additional_2.jpg
│       012345678_additional_3.jpg
│       012345678_additional_4.jpg
│       012345678_lateral.jpg
└───Renamed
        012345678_887856_162658.jpg

関連情報