2

新しいサブフォルダーのセットにコピーしたい一連のファイルがあります。

例:
0_107_206.tif
1_0_69.tif
1_16_75.tif
1_40_117.tif 2_0_36.tif
2_26_62.tif
35_0
​​_19.tif

これらのファイルは、ファイル名の最初の部分文字列 (0、1、35 など) に基づいてフォルダーに保存されます。2 つの '_' 文字の間の 2 番目の部分文字列に基づいてサブフォルダーを作成したいと考えています。私はの線に沿っていくつかのことを試しました

SETLOCAL ENABLEDELAYEDEXPANSION
FOR %%B in (*.tif) DO (
SET FileName=%%B
SET FileName1=!FileName:~2!
SET FileName2=!FileName1:~0,-7!
MD %TargetPath%!FileName2!
)
ENDLOCAL

しかし、これでは柔軟性が十分ではありません。「_」文字の位置を取得し、それを SUBSTRING 関数にフィードする方法はありますか? 当然、処理する必要があるファイルが何千もあるため、これはループで機能する必要があります。
前もって感謝します。

4

2 に答える 2