В проводнике Windows я могу отфильтровать папку на основе критериев измерения, скажем: ширина: <800 высота: <600 (чтобы отфильтровать небольшие изображения) высота:> 2000 (чтобы отфильтровать портреты), а затем удалить их.

Есть ли способ автоматизировать это? Это может быть powershell, batch, любая бесплатная программа.

1 ответ1

0

Я предлагаю Пакетные Изображения. Хотя это не бесплатная программа, она может выполнить вашу задачу.

Базовая настройка

Сначала вы указываете, какие изображения вы хотите найти и удалить, следующим образом:

  1. Нажмите на кнопку для поиска изображений

Кнопка поиска

  1. В появившемся диалоговом окне укажите, где искать изображения, шаблон имени файла, основные свойства файла:

Диалог поиска

  1. На вкладке « Свойства изображения » под вложенной вкладкой « Размер» укажите требования к размерам изображений (будут выбраны те, которые соответствуют):

Реквизит изображения

  1. Теперь нажмите «Поиск», и он будет сканировать и добавлять только совпадающие изображения из всех папок, создавая список, с которым вы можете работать:

список

  1. В зависимости от того, хотите ли вы купить программу (все до этого момента можно сделать с помощью бесплатной версии), у вас есть несколько вариантов:

5.1. Купите программу и используйте встроенное быстрое задание «Удалить файлы» для удаления этих изображений:

удалить изображения

5.2. Кроме того, вы можете удалить эти изображения полу-вручную:5.2.1. Сначала вы сохраняете список изображений, которые соответствуют критериям, с помощью кнопки «Сохранить список изображений»:

5.2.2. Созданный файл будет простым текстовым файлом, содержащим полный путь к изображению - по одному в строке. Затем вы открываете этот файл в Блокноте или другом бесплатном редакторе и добавляете del перед каждой строкой:

блокнот

5.2.3. Сохраните файл в блокноте под новым расширением bat и просто дважды щелкните этот файл в Проводнике, чтобы запустить его. Это удалит все изображения, перечисленные в этом файле.

автоматизация

Теперь все, что описано, является лишь автоматизацией в том смысле, что вы можете захватывать все изображения, которые соответствуют вашим критериям, в одном пакете, но вам все равно придется делать это вручную. Если вам требуется полная автоматизация, вы можете сделать это с помощью платной версии Batch Images, используя один из 2 дополнительных режимов:

1) режим непрерывного фонового сканирования, который в основном будет сканировать указанные папки на наличие заданных изображений (так же, как я описал выше), но автоматически каждые несколько минут; и затем автоматически выполнит запрошенные действия с теми, которые соответствуют критериям (в вашем случае удалите файлы):

режим бг

2) Режим расписания / командной строки. По сути, вы сохраняете поиск изображений из шагов 1–3 выше в качестве шаблона, а затем передаете этот файл шаблона вместе с некоторыми другими аргументами командной строки в программу, и программа найдет и удалит изображения, которые соответствуют критериям - из командной строки, не показывая любой пользовательский интерфейс (кроме дополнительного окна консоли). И это, конечно, вы можете автоматизировать с помощью Windows Task Scheduler (на самом деле вы также можете сделать это из пользовательского интерфейса программы, что является более удобным способом).


Забыл упомянуть, что часть "базовой настройки" также может быть выполнена с помощью бесплатного XNView. Однако он не предлагает дополнительной автоматизации, которая вам требуется. Но он также может найти изображения, соответствующие критериям, и создать их список, с которым вы можете работать вручную.


Отказ от ответственности: я являюсь пользователем платной версии Batch Images и часто использую ее для своих нужд обработки изображений. Я также часто использую XNView.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .