#!/bin/bash from="gphotos-sync" size="400" to="gphotos-sync-$size" mkdir -p "$to" run() { v magick convert "$from/$1" -resize 400x400^ "$to/$1" } ( cd "$from" find . -type d ) | ( cd "$to" xa mkdir -pv ) ( cd "$from" find . -type f ) | while read F; do run "$F" & for I in `seq 1 12`; do read F || break run "$F" & done wait done