Самый простой способ сделать это с помощью rename
, который можно установить с помощью homebrew , используя:
brew install rename
Затем вы можете зайти в свой каталог с изображениями и запустить:
rename --dry-run -X -e '$_ = "$N"' *jpg
Пример вывода
'a.jpg' would be renamed to '1.jpg'
'article.jpg' would be renamed to '2.jpg'
'blob-0.jpg' would be renamed to '3.jpg'
'blob-1.jpg' would be renamed to '4.jpg'
'blob-2.jpg' would be renamed to '5.jpg'
'blob-3.jpg' would be renamed to '6.jpg'
Если это выглядит правильно, вы можете запустить его снова без --dry-run
, чтобы фактически сделать это, вместо того, чтобы просто сказать вам, что он будет делать.
Если вы хотите, чтобы ваши имена были дополнены нулями, самое простое - позволить rename
автоматически определить, сколько отступов вам нужно, например:
rename --dry-run -X -N ...01 -e '$_ = "$N"' *jpg
Преимущества использования rename
заключаются в следующем:
- это просто и мощно
- предупредит вас перед перезаписью файлов
- он может выполнить пробный прогон и сказать вам, что произойдет, фактически ничего не делая
Если вам нужно объяснение команды '$_ = "$N"'
, тогда читайте дальше ...
Команда rename
на самом деле является сценарием Perl, поэтому часть, о которой я упоминал выше, является просто сценарием Perl, заключенным в одинарные кавычки. $N
- это просто переменная Perl, которая расширяется до последовательно увеличивающегося числа. Специальная переменная Perl $_
заполняется именем текущего файла перед выполнением вашего маленького Perl-скрипта, и, что самое важное, вы должны установить для него имя, которое вы хотите, чтобы входной файл был переименован в.