Если у вас ограниченная глубина каталогов и не слишком много файлов, то ленивое решение:
pngquant *.png */*.png */*/*.png
Стандартное решение:
find . -name '*.png' -exec pngquant --ext .png --force 256 {} \;
и многоядерная версия:
find . -name '*.png' -print0 | xargs -0 -P8 -L1 pngquant --ext .png --force 256
, где -P8
определяет количество процессоров, а -L1
определяет количество изображений для обработки за один вызов pngquant (я использую -L4
для папок с большим количеством маленьких изображений, чтобы сэкономить при запуске процесса).