Ссылка на несколько файлов со счетчиками в windows командном файле - PullRequest
0 голосов
/ 10 апреля 2020

У меня есть 3 группы файлов, группа R, группа G и группа B. Предположим, что количество файлов R, G и B всегда одинаково. Я хочу создать простой windows пакетный файл для их обработки:

R0001 + G0001 + B0001 = RGB0001 R0002 + G0002 + B0002 = RGB0002 ...

Хотя его легко найти примеры того, как сделать FOR l oop через все файлы с чем-то вроде «for %% f in», я не знаю, как ссылаться на 3 входных файла и 1 выходной файл и координировать счетчик 4 di git .

Хотя представляется возможным просто посчитать количество файлов и использовать это целое для a для l oop, и каждый раз я не понимаю, как преобразовать целое число в строку из 4 символов, и затем предварительно добавляйте 'R', 'G' и 'B' каждый раз до конца.

для %% f в (*) do (???)

Это проходит через один список файлов - скажем, R0001 ... но никак не ссылаться на G или B.

Так что, если я расширю это до

for %%f in (*) do (
set digits=%f:~-4%
set "strR=R%digits%.tif"    
set "strG=G%digits%.tif"    
set "strB=B%digits%.tif"
set "strRGB=RGB%digits%.tif"        
magick convert -depth 16 -size 6000x4000 gray:%strR% gray:%strG% gray:%strB% -combine %strRGB%)

Но это не даст того, что я ожидаю.

set digits=~-4
set "strR=RB0004.tif:~-4.tif"
set "strG=GB0004.tif:~-4.tif"
set "strB=BB0004.tif:~-4.tif"
set "strRGB=RGBB0004.tif:~-4.tif"
magick convert -depth 16 -size 6000x4000 gray:RB0017.tif:~-4.tif gray:GB0017.tif:~-4.tif gray:BB0017.tif:~-4.tif -combine RGBB0017.tif:~-4.tif
...