Пакетное переименование файлов на Mac: 4 практичных способа

Пакетное переименование файлов на Mac: 4 практичных способа

Автор: Josh Callahan11 мин чтения

С камеры у вас до сих пор лежат файлы с именами вроде IMG_2041.JPG, а в соседней клиентской папке везде одна и та же опечатка в коде проекта. Вам нужны понятные имена, но при этом не хочется перемешать порядок снимков или обнаружить, что переименование задело ещё и расширения.

Это разные задачи. Пакетное переименование файлов на Mac лучше выбирать по правилу, которое вы применяете, а не по количеству выделенных файлов. Для разовой правки хватит Finder, для повторяющихся импортов сохраните рабочий процесс, а к Терминалу обращайтесь, только когда этого требует шаблон. И заранее решите, как вы проверите результат и как откатите его назад.

Выберите способ пакетного переименования ​

Начните с того, что опишете нужное изменение простыми словами. «Заменить ACNE на ACME» — задача для Finder. «Добавить дату сдачи и новую нумерацию ко всем экспортам» — задача для автоматизации. «Убрать SCAN_, только если это в начале имени» — задача для шаблона.

Не пишите скрипт только потому, что папка выглядит внушительно. Большое выделение с простым правилом — всё равно простое переименование. И наоборот: небольшой набор файлов может потребовать аккуратного сопоставления по шаблону, если один и тот же текст встречается в разных местах.

Какой способ пакетного переименования на Mac выбрать

СпособКогда использоватьЧто меняетКак откатить
Переименование в FinderОдно видимое выделение, делаете один разЗаменить текст, добавить текст или имя плюс индекс, счётчик или датаCommand-Z сразу, до любого другого действия
Быстрое действие AutomatorОдно и то же правило для каждого импорта или поставкиПоследовательные имена, номера с нулями и префикс с датой в сохранённом процессеТестируйте на копии, пока имена в примере не станут правильными
Быстрые командыНебольшое повторяемое действие в актуальной macOSШаг «добавить» или «заменить» либо проверенное действие с shell-скриптом, запуск из менюСначала проверьте на копии папки
Цикл mv в ТерминалеШаблон, префикс или порядок даты, которые Finder выразить не можетВсё, что описывает цикл или подстановкаВыведите планируемые имена до любого mv
Специальное приложение для переименованияРецепты из нескольких шагов или даты съёмки в имени файлаТаблицы предпросмотра и цепочки правил сверх встроенных действийПроверьте предпросмотр приложения, поддержку отмены и актуальные цены на сайте разработчика

Берите самый простой подходящий инструмент ​

Finder — правильная отправная точка, когда нужные объекты уже выделены. Режимы «Заменить текст», «Добавить текст» и «Формат» покрывают замену, префиксы и суффиксы, а также своё имя с индексом, счётчиком или датой. Ставить что-то ещё ради одной повторяющейся опечатки в коде клиента нет смысла.

Automator окупает настройку, когда вы раз за разом собираете одно и то же правило. Допустим, еженедельный импорт фото всегда требует общего базового имени, нумерации и даты импорта. Сохраните эту комбинацию, а не вспоминайте настройки каждый раз.

Быстрые команды подходят для компактного действия, которое хочется иметь под рукой в Finder или в строке меню. Считайте Automator и Быстрые команды двумя альтернативными способами сохранить повторяемую операцию, а не инструментами, которые обязательно нужно сочетать.

Когда стоит взять специальное приложение ​

Специальный переименователь имеет смысл, когда нужно просмотреть каждое предлагаемое имя и при этом выстроить цепочку из нескольких преобразований. Ещё одна причина — даты съёмки с камеры, особенно если имена нужно строить по EXIF, а не по дню импорта файлов.

Актуальные возможности и цены смотрите на странице самого разработчика. Не считайте, что все такие приложения одинаково хорошо работают с метаданными камеры, сопутствующими файлами, конфликтами имён и отменой.

Прежде чем выбрать, запишите типичную пару «до и после». Например, SCAN_contract_SCAN_final.pdf должен превратиться в contract_SCAN_final.pdf, а не в contract_final.pdf. Это различие скажет вам больше, чем размер папки.

Выберите один путь и проверьте его. Для опечатки в уже выделенных файлах остановитесь на Finder. Для регулярных поставок сохраните рабочий процесс. Для изменений, зависящих от позиции в имени, используйте читаемый цикл в Терминале или визуальный переименователь с равнозначным правилом.

Переименование файлов в Finder ​

Обычное пакетное переименование Finder делает без дополнительного софта. В руководстве Apple по переименованию файлов, папок и дисков описано, как выделить несколько объектов, щёлкнуть по ним с нажатой клавишей Control и выбрать «Заменить текст», «Добавить текст» или «Формат».

Представьте, что вы разбираете фото из отпуска. Можно оставить идентификаторы камеры и добавить Lisbon-, заменить IMG_ на Trip- или отбросить исходные имена и создать новую нумерацию. Эти варианты сохраняют разную информацию, так что определитесь с результатом до того, как откроете диалог.

Базовый порядок действий от выделения до переименования выглядит так:

Трёхшаговая инструкция, показывающая, как выполнить пакетное переименование файлов на Mac в Finder.

Выделите файлы и задайте правило ​

  1. Откройте рабочую папку в Finder. Если вы заменяете полезные идентификаторы камеры, работайте с дубликатом папки. Переключитесь на вид «Список», если так удобнее разглядывать имена.

  2. Выделите нужные файлы. Shift-клик выделяет диапазон, а Command-клик позволяет выбрать разрозненные объекты, не захватывая всё, что между ними. Убедитесь, что посторонние экспорты и папки не подсвечены.

  3. Щёлкните по выделенному объекту с нажатой клавишей Control и выберите «Переименовать». Не снимайте выделение. Правило применится ко всем выбранным объектам, а не только к тому, на который указывает курсор.

  4. Выберите режим, который соответствует желаемому результату. Для фото из отпуска используйте «Заменить текст», чтобы превратить IMG_ в Trip_, или «Добавить текст», чтобы дописать в начало Lisbon-, сохранив имя от камеры.

  5. Для совершенно новой схемы имён выберите «Формат». Укажите «Имя и индекс», «Имя и счётчик» или «Имя и дата». Общую часть имени, например Lisbon-Trip-, впишите в поле «Свой формат», а затем решите, где должен стоять генерируемый компонент: до или после неё.

  6. При использовании нумерации задайте «Начать нумерацию с». Внимательно прочитайте пример в Finder, включая разделитель, сгенерированные цифры и расширение. Нажимайте «Переименовать», только когда пример совпадает с задуманной структурой.

Общий текст должен стоять в поле «Свой формат», а не в поле начального номера. Начальное число само по себе описательного имени не создаёт. Включите в свою основу дефис или подчёркивание, если они вам нужны.

Оставить идентификатор камеры или заменить его осознанно ​

«Заменить текст» не создаёт новую нумерацию. Если заменить IMG_ на Trip_, исходный номер камеры сохранится, и IMG_2041.JPG станет Trip_2041.JPG. Это удобно, когда кому-то нужно сопоставить обработанный снимок с исходным файлом с камеры.

«Добавить текст» сохраняет ещё больше информации. Если дописать в начало Lisbon-, получится Lisbon-IMG_2041.JPG: имя длиннее, зато легко отследить исходник.

«Формат» заменяет исходное имя вашей схемой. Используйте его, когда нужна сквозная нумерация для сдачи, а не идентификаторы камеры. Посмотрите на реальную ширину счётчика в примере Finder и не предполагайте, что «Имя и индекс» даёт какое-то определённое количество нулей. Если по требованиям к сдаче нужна точная ширина, берите рабочий процесс с явными настройками дополнения нулями.

Команда Finder не ограничивается фотографиями. Тот же подход работает для выбранных папок проектов или документов, а переименование дисков тоже описано в рабочем процессе Apple. Привычки работы с выделением и навигацией, которые делают такие задачи менее нервными, собраны в нашей статье советы по Finder на Mac.

После переименования проверьте первый и последний файлы и несколько имён между ними. Если результат неверный, нажмите Command-Z сразу же, до любой другой операции в Finder. Не делайте сначала второе исправляющее переименование, рассчитывая, что исходный набор потом легко восстановится.

Если вы повторяете эти настройки для каждого импорта, сохраните операцию, а не собирайте диалог заново.

Повторяем задачу через Automator или Быстрые команды ​

Сохранённое переименование полезно, когда входные файлы меняются, а правило остаётся прежним. Для еженедельного импорта фото может понадобиться общая основа имени и префикс с датой импорта, для набора исследовательских данных — единая нумерация для последующей обработки.

Automator позволяет собрать такую операцию из действий Finder. Иллюстрация показывает подход на основе рабочих процессов:

Рисунок от руки, показывающий, как автоматизировать пакетное переименование файлов с помощью рабочих процессов Automator на Mac.

Сохраните быстрое действие с датой и нумерацией ​

В своём руководстве по автоматизации работы с фото Apple показывает последовательное переименование с трёхзначной нумерацией и ведущими нулями, а затем добавление текущей даты через дефис. Это готовый рецепт, который можно адаптировать, а не набор разрозненных шагов переименования.

  1. Откройте Automator и создайте «Быстрое действие». Настройте процесс так, чтобы он получал файлы или папки в Finder. Тогда выбранные объекты Finder станут входными данными процесса.

  2. Найдите действие «Переименовать объекты Finder» и перетащите его в процесс. Если Automator предложит добавить «Скопировать объекты Finder», согласитесь, если хотите, чтобы процесс работал с дубликатами. Явно задайте папку назначения для копий.

  3. В действии переименования выберите «Сделать последовательными». Укажите новое базовое имя, выберите разделитель и включите настройку ширины номера с ведущими нулями. Для этого рецепта сделайте ширину такой же, как в примере Apple.

  4. Добавьте после этого шага ещё одно действие «Переименовать объекты Finder». Выберите «Добавить дату или время», используйте текущую дату, поставьте её перед именем и выберите разделитель-дефис. Проверьте отображаемый формат даты, а не полагайтесь на региональные настройки по умолчанию.

  5. Сохраните быстрое действие под названием «Дата и нумерация». Выделите в Finder небольшой набор дубликатов, откройте «Быстрые действия» и запустите его. Проверьте фактический результат, прежде чем применять процесс к исходной папке поставки.

Нумерация с нулями остаётся корректной в программах, которые сравнивают имена файлов посимвольно. Finder часто сортирует числа «естественно», но система загрузки у получателя, его скрипт или просмотрщик архивов могут этого не делать. Составляйте имена файлов с расчётом на то, куда они попадут, а не только на то, как выглядит окно Finder.

Для еженедельного импорта фото чётко обозначьте дату: «текущая дата» — это дата обработки, а не дата съёмки. Для набора исследовательских данных убедитесь, что новая нумерация не сломает идентификаторы, используемые в таблице или скрипте анализа.

Быстрые команды как компактный запуск ​

Для новой быстрой команды включите в её настройках «Использовать как быстрое действие» и Finder, затем разрешите приём файлов на вход. Для простого преобразования используйте «Повторить для каждого» и «Переименовать файл», а для уже проверенного правила имён — «Выполнить сценарий оболочки». Если используете shell-действие, передавайте выбранные файлы как аргументы, а не собирайте пути из неэкранированного текста.

Первая версия должна быть узкой. Команду, которая добавляет код проекта, проверить проще, чем ту, что в одном запуске переименовывает, перемещает, сортирует и удаляет.

Визуальное сопровождение по настройке процесса — в этом видеоразборе:

Материал Tech Today о простых шагах автоматизации задач даёт полезный контекст, чтобы определить повторяющуюся работу до автоматизации. Наш обзор приложений для автоматизации на Mac пригодится, если вашему переименованию ещё нужен надёжный способ запуска.

Храните нетронутую копию первой партии, пока результат не совпадёт с вашей спецификацией имён. Процесс, который отработал без ошибок, всё равно может выдать неправильные имена.

Терминал для переименования по шаблону ​

Простая замена текста в Finder оказывается слишком грубой, когда нужно изменить только префикс. Если SCAN_ встречается и в начале имени, и внутри него, вы, возможно, захотите убрать только первое вхождение. Перестановка даты требует такой же точности.

В стандартной установке macOS нет универсальной команды rename. Надёжный встроенный вариант — mv внутри цикла zsh с предварительным выводом имён без перемещения.

Предпросмотр смены префикса ​

Откройте Терминал, наберите cd с пробелом, перетащите в окно дубликат рабочей папки из Finder и нажмите Return. Прежде чем продолжать, убедитесь, что вы находитесь в копии. Эти примеры предполагают обычные имена файлов без переводов строки.

Предпросмотр добавления префикса проекта:

for f in *.jpg; do
  echo "$f -> Project_$f"
done

Просмотрите каждое предлагаемое имя. Когда всё верно, само переименование выглядит так:

for f in *.jpg; do mv "$f" "Project_$f"; done

Шаблон в нижнем регистре находит .jpg, но не все возможные варианты регистра расширения. Узкое совпадение здесь полезно: оно не даст обработать больше файлов, чем вы задумали.

Чтобы убрать SCAN_ только в начале имени, сделайте предпросмотр с подстановкой параметра:

for f in SCAN_*; do
  new="${f#SCAN_}"
  echo "$f -> $new"
done

${f#SCAN_} отрезает совпавший префикс, а более поздний SCAN_ не трогает. Проверив результат, замените строку предпросмотра на mv -i "$f" "$new": интерактивный флаг спросит подтверждение, если файл с таким именем уже существует.

Не подтверждайте перезапись только ради того, чтобы цикл шёл дальше. Конфликт имён значит, что правило нужно перепроверить.

Перестановка даты через понятное регулярное выражение ​

Допустим, заметка 03-12-2024-meeting.txt записана в формате день-месяц-год, а должна стать 2024-12-03-meeting.txt. Предпросмотр изменения:

for f in *.txt; do
  new=$(echo "$f" | sed -E 's/^([0-9]{2})-([0-9]{2})-([0-9]{4})/\3-\2-\1/')
  echo "$f -> $new"
done

Группы захвата соответствуют дню, месяцу и году. Подстановка ставит год первым, а остальную часть имени сохраняет. sed -E включает расширенные регулярные выражения, поэтому фигурные скобки повторения не нужно экранировать обратными слешами.

Это проверяет форму даты, а не то, существует ли такая дата в календаре. Прежде чем применять, убедитесь, что в источнике действительно формат день-месяц-год.

Просмотрев каждую строку, примените ту же подстановку с защищённым перемещением:

for f in *.txt; do
  new=$(echo "$f" | sed -E 's/^([0-9]{2})-([0-9]{2})-([0-9]{4})/\3-\2-\1/')
  if [[ "$f" != "$new" ]]; then
    mv -i "$f" "$new"
  fi
done

Переменные в кавычках сохраняют пробелы. Сравнение пропускает неизменённые имена, чтобы не пытаться переместить файл на самого себя.

Сторонняя команда rename, установленная через Homebrew, может сократить работу с регулярными выражениями, но в разных реализациях синтаксис различается. Обойдитесь без установки, если с задачей справляется читаемый цикл.

У переименований в Терминале нет отмены, как в Finder. Сохраняйте исходную папку и не запускайте команду, которую не можете объяснить вслух: какие файлы она выбирает и какими будут новые имена.

Порядок, метаданные и отмена ​

Нумерация без ведущих нулей может дать неожиданный порядок в программах, которые сортируют имена лексикографически. Естественная сортировка чисел в Finder способна скрывать эту слабость, пока вы не загрузите папку на сервер или не передадите её тому, кто пользуется другой программой. Относитесь к имени файла как к переносимому правилу порядка, а не просто к подписи, которая хорошо смотрится у вас на экране.

Перед нумерацией решите, что именно означает последовательность. Алфавитный порядок камеры, порядок создания файлов и реальный порядок съёмки — не одно и то же. В папке со снимками с нескольких камер проверьте предлагаемую последовательность, а не считайте, что видимый столбец с датой показывает момент, когда сделан каждый снимок.

Проверка перед запуском ​

Проверьте дубликат папки по этой таблице, прежде чем трогать настоящую партию.

Типичные ошибки переименования и способы их исправить

ОшибкаЧто вы видитеКак исправить
Номера без нулейПри лексикографической сортировке 1, 10, 11, затем 2Форматируйте номера как 001 или шире
Замена задела расширениеФайл открывается не той программой или теряет типПроверьте, что в предпросмотре имя по-прежнему заканчивается исходным суффиксом
Нет предпросмотраВся папка оказывается испорчена разомСначала проверьте пример в Finder или цикл с echo на копии
Смена только регистраmv сообщает, что это тот же файлПереименуйте во временное имя, а затем в итоговый регистр
Дата начинается с дняДаты группируются по дню, а не хронологическиСтавьте год первым, ГГГГ-ММ-ДД
Файлы ещё открытыПрограмма создаёт файл под старым именем зановоЗакройте эти программы, затем переименуйте

Расширения заслуживают отдельного взгляда. Широкая замена, нацеленная на jpg, может задеть и .jpg, а скрипт, который пересобирает имя целиком, может вообще потерять суффикс. Переименование расширения не конвертирует содержимое файла.

Смена одного лишь регистра требует осторожности на обычном для Mac томе без учёта регистра. Если при переименовании в оболочке сообщается, что источник и приёмник — один и тот же файл, переместите его через уникальное временное имя. Убедитесь, что такого временного имени ещё нет.

Имена файлов и содержимое файлов — разные вещи ​

Обычное переименование меняет запись в каталоге, а не байты внутри файла. Оно не перезаписывает даты съёмки в EXIF, текст документов или имена файлов внутри переименованной папки. Но не обещайте, что любая файловая система, облачный сервис или сопутствующий процесс оставят все метки времени нетронутыми.

Сначала закройте файлы в редактирующих их программах. Одни приложения могут продолжать работать с открытым файлом, другие сохраняют ещё одну копию под старым именем или теряют связанный ресурс. Медиатеки, дизайнерские документы и проекты с кодом после внешнего переименования могут потребовать повторного связывания.

Для постоянных соглашений об именах наша статья об организации цифровых файлов поможет связать читаемые имена со структурой папок, которую можно поддерживать. Продуманная схема имён не починит сломанные ссылки внутри проекта.

Способ восстановления зависит от метода. Для ошибочного пакета в Finder используйте немедленную отмену. Для автоматизации и Терминала полагайтесь на нетронутые оригиналы и не рассчитывайте, что Command-Z отменит операцию. Перемещение в оболочке не отправляет старое имя файла в Корзину.

Проверьте на копии, дополните номера нулями, не трогайте расширение, а потом переименовывайте настоящий набор.


Когда имена приведены в порядок, наши цвета и значки папок помогут быстро ориентироваться в проектах в Finder. Загляните в Tintd, чтобы оформить сразу несколько папок одним действием, или используйте Folder Watcher, чтобы новые папки автоматически получали подходящие цвета и значки по их именам.

Josh Callahan

Автор

Josh Callahan

Копирайтер

Поделиться статьёй

Готовы сделать ваши папки красивыми?

Раскрасьте значки ваших папок всего за несколько кликов.

Скачать для Mac