Це трохи пізно, але я подумав, що хочу додати, що краще рішення (хоча, можливо, менш читабельне), ніж ті, що поки що:
find /path -type f -not -name "*.*" -print0 | xargs -0 rename 's/(.)$/$1.jpg/'
Використання find | xargs
шаблону, як правило, призводить до більш ефективного виконання, оскільки вам не доведеться розщеплювати новий процес для кожного файлу.
Зауважте, що для цього потрібна версія перейменування, знайдена в дистрибутивах з ароматом Debian (aka prename), а не традиційне перейменування. Це просто крихітний сценарій Perl, тому було б досить просто використовувати команду, що була вище, в будь-якій системі.