Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Кавычки и [] в источнике цикла FOR (http://forum.oszone.net/showthread.php?t=339852)

adrobkov@vk 26-03-2019 22:43 2865278

Кавычки и [] в источнике цикла FOR
 
Уважаемые пользователи и участники поделитесь соображениями и решениями, как реализовать следующий код чтобы он работал)):

Код:

@echo ON
SetLocal EnableDelayedExpansion
for /F "delims=," %%a in (`%lr_app%\ImageMagick\convert.exe "%dir_img%\img.arw" -resize 1x1! -format "%[fx:int(255*r+.5)],%[fx:int(255*g+.5)],%[fx:int(255*b+.5)]" info:-`) do set a=%%a
echo !a!

Сама строка "%lr_app%\ImageMagick\convert.exe "%dir_img%\img.arw" -resize 1x1! -format "%[fx:int(255*r+.5)],%[fx:int(255*g+.5)],%[fx:int(255*b+.5)]" info:-" возвращает 3 цифры через запятые (Red,Green,Blue)
Если экранирую кавычки, то ругается на [. Уже не знаю как быть.. Очень нужна ваша помощь!

alpap 27-03-2019 00:08 2865293

если честно, не понял точно что вам надо, попробуйте пока так, потом скажете и станет ясно:
Код:

@echo off
for /F "tokens=1-3 delims=," %%a in ('"%lr_app%\ImageMagick\convert.exe "%dir_img%\img.arw" -resize 1x1! -format "%[fx:int(255*r+.5)],%[fx:int(255*g+.5)],%[fx:int(255*b+.5)]" info:-"') do set a=%%a& set b=%%b& set c=%%c
echo %a% %b% %c%
pause


adrobkov@vk 27-03-2019 00:22 2865297

Цитата:

Цитата alpap
если честно, не понял точно что вам надо, попробуйте пока так, потом скажете и станет ясно: »

Ответ:
C:\Users\ADrobkov\AppData\Roaming\Adobe\Lightroom\Software>middlecolor.bat
Непредвиденное появление: ].

Цитата:

Цитата alpap
если честно, не понял точно что вам надо »

Утилитка convert из пакета Imagemagick ресайзит изображение к одному пикселю и в определенном формате (XX,YY,ZZ) без скобок выводит результат, который мне нужно запихать в переменную, что бы в дальнейшем отдать ее утилитке exiftool, которая запишет это значение как тег прибавив к каждой из цифр +50.

Iska 27-03-2019 06:46 2865312

adrobkov@vk, давно уже нет «утилитки convert» в составе ImageMagick.

adrobkov@vk 27-03-2019 10:28 2865327

Iska, не знаю, не знаю... Она работала и продолжает работать https://imagemagick.org/script/convert.php

Iska 27-03-2019 16:50 2865376

adrobkov@vk, в седьмых версиях ImageMagick функционал данной утилиты, как и многих других, был перенесён в одну единую утилиту magick.exe:
Скрытый текст


Довеском:

adrobkov@vk 27-03-2019 19:02 2865403

Iska, спасибо! Бузу знать. Но вопрос остается открытым... Так как на переход с 6 версии придется очень много перелопатить.
Как оправить в переменную данный код: "%lr_app%\ImageMagick\convert.exe "%dir_img%\img.arw" -resize 1x1! -format "%[fx:int(255*r+.5)],%[fx:int(255*g+.5)],%[fx:int(255*b+.5)]" info:-"'

Iska, кстати, её всё равно можно инсталлить.. Только сейчас установил.
Скрытый текст

Iska 27-03-2019 22:39 2865468

adrobkov@vk, Вы то ли не читали «Довеском», то ли не поняли. Цитирую (выделение моё):
Цитата:

animate, compare, composite, conjure, convert, display, identify, import, mogrify, montage, stream
To reduce the footprint of the command-line utilities, these utilities are symbolic links to the magick utility. You can also invoke them from the magick utility, for example, use magick convert logo: logo.png to invoke the convert utility.

adrobkov@vk 27-03-2019 23:23 2865475

Iska, для меня это удобно.. Да и не в этом суть... Я сюда пришел не ImageMagick разбирать.. Есть у меня 6 версия и работает она отлично... Вопрос как быть с батником? ВОт по этому поводу скажите как быть, пожалуйста!

Проблема решена, экранированием %. Все спасибо, кто думал)
@echo ON
SetLocal EnableDelayedExpansion
for /F "delims=," %%a in (`%lr_app%\ImageMagick\convert.exe "%dir_img%\img.arw" -resize 1x1! -format "%%[fx:int(255*r+.5)],%%[fx:int(255*g+.5)],%%[fx:int(255*b+.5)]" info:-`) do set a=%%a
echo !a!


Время: 00:31.

Время: 00:31.
© OSzone.net 2001-