Вы можете использовать все это в одной строке:
find -name '*.JPG' | awk 'BEGIN{ i=1 }{ printf "mv \"%s\" %04d.jpg\n", $0, i++ }'| bash
Используйте это, например, из папки /Pictures. Вы ищете все JPG файлы, после чего awk pipe получает источник и увеличивает его в 4-значном счетчике. Отправляем в bash эту трубу
Поскольку ни ОЗУ, ни ЦП не исчерпаны, причина может быть связана с