Вопрос Как я могу выполнить команду ImageMagick?


я делаю

convert dead0000.bmp -alpha on -fill none -draw 'color 0,0 replace' dead0000.png

но у меня есть несколько тысяч файлов. Есть ли способ просто сделать весь каталог сразу?


3
2018-06-26 05:54


происхождения




ответы:


Просто for цикла в Bash, оболочке macOS по умолчанию, было бы достаточно:

for f in *.bmp; do convert "$f" -alpha on -fill none -draw 'color 0,0 replace' "${f%%.bmp}.png"; done

Оно использует струнные манипуляции для замены расширения файла для выходного файла. Вот:

  • "$f" это исходное имя входного файла
  • "${f}" то же самое, просто другой способ доступа к переменной
  • "${f%%.bmp}.png" использует замену строк - f%%.bmp означает, что самое длинное совпадение .bmp со спины $f,

3
2018-06-26 06:06



Что 0,0 ? - Iulian Onofrei
@IulianOnofrei Я не знаю; он был частью команды OP. Вы должны спросить его. Было бы здорово, если бы вы могли объяснить, почему вы отказались от этой должности. - slhck
Но если вы посмотрите в документации, он говорит: «В этой системе координат 0,0 - центр верхнего левого пикселя». - slhck
Я проигнорировал его, потому что он вообще не объясняет команду. Поскольку у не всех людей есть один и тот же вопрос, им нужно адаптировать ответы. Кроме того, где цвет, который нужно заменить в этой команде? - Iulian Onofrei
@IulianOnofrei Вопрос о том, как выполнить отдельную команду для запуска партии. В этом случае не имеет значения, является ли это командой ImageMagick или используется какой-либо другой инструмент. Задача ответа не должна объяснять, что делает команда, когда она уже задана в вопросе, и этот вопрос касается не фактической функциональности команды. Я иногда понимаю, что люди находят вопросы, связанные с их проблемами, но с другим фокусом. Это один из таких вопросов. Если у вас возникла проблема с пониманием команды, прочитайте документацию и задайте новый вопрос. - slhck


Посмотри на это. mogrify - мощный скриптовый инструмент для imagemagick http://www.imagemagick.org/script/mogrify.php (и * .bmp)


-1
2018-06-26 08:59



Пожалуйста, добавьте больше, чем просто ссылку в качестве ответа. Хотя это может быть полезно, нам нужен фактический ответ Вот, на Super User. Особенно, если OP запрашивает команду, вы должны иметь возможность дать некоторое решение. благодаря - slhck