Задача: мне нужно проанализировать вывод команды imagemagick "определить", чтобы обнаружить наличие определенной строки. Если его не существует, я отображаю имя файла на экране.
Фон: у меня есть примерно 100k миниатюрных изображений (пример миниатюры, которую нужно проанализировать). Мне нужно проверить каждую миниатюру, чтобы убедиться, что она отображается правильно. К счастью, "правильно отрендерено" можно определить по наличию красных пикселей на миниатюре. Используя команду imagemagick "определить", я могу вывести цветовую карту, которая будет содержать строку «(255, 0, 0) # FF0000 red».
Нужно: используя скрипт bash, я могу легко получить все имена файлов и перебрать их. Мне нужно выяснить, как молча разобрать выходные данные и найти совпадение строк и отобразить имя файла, если оно не найдено.
В частности, я хочу создать скрипт, который выполняет следующие действия:
1) находит все файлы * .png в определенном каталоге.
2) для каждого файла, запустить «идентифицировать -verbose» и молча передать вывод ...
3) проанализируйте вывод, чтобы увидеть, существует ли строка «(255, 0, 0) # FF0000 red».
3а) если это произойдет, я продолжаю молча перейти к следующему файлу.
3b) если это не так, я повторяю имя файла.
В конечном счете, у меня останется короткий список миниатюр, которые не содержат красных пикселей и требуют ручной проверки.
Любая помощь в создании этого скрипта будет наиболее ценной.