·5 мин. чтения

Как переименовать файлы с помощью регулярных выражений на Mac

Когда имена файлов подчиняются шаблону — даты внутри текста, номера версий, случайные префиксы — обычный поиск и замена с этим не справится. Регулярные выражения справятся, но в macOS нет встроенного переименования по regex.

У вас есть папка с файлами вроде «report_2026-03-15_draft_v2.pdf», и нужно извлечь только дату и изменить её формат, или убрать всё после нижнего подчёркивания, или заменить фрагмент, который в каждом файле выглядит по-разному. Обычная замена текста тут не поможет, потому что текст не одинаков в каждом файле — он подчиняется шаблону.

Регулярные выражения (regex) — это инструмент для работы с текстом по шаблонам. Они позволяют находить, захватывать и переставлять части имени файла по правилам, а не по точному совпадению строк. Проблема в том, что macOS нигде в Finder не предоставляет переименование по regex.

Подход через Terminal и почему большинство его избегает

Переименовать файлы с помощью regex можно через команды Terminal вроде rename, sed или цикл bash с подстановкой параметров. Например:

for f in *.pdf; do mv "$f" "$(echo "$f" | sed 's/draft_v[0-9]*/final/')"; done

Это работает, но у подхода есть реальные недостатки:

  • Нет предпросмотра — результат виден только после переименования
  • Одна опечатка в регулярном выражении — и у вас испорченные имена файлов без возможности отмены
  • Писать и отлаживать regex в одну строку — мучительно
  • Пользователям без технического бэкграунда такой подход реально недоступен

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

Переименование по regex с живым предпросмотром

Renym включает полноценную поддержку регулярных выражений в действии «поиск и замена». Вы пишете шаблон regex, задаёте замену (в том числе со ссылками на захваченные группы) и в реальном времени видите результат для каждого файла — ещё до того, как что-либо будет переименовано.

Переименование файлов по regex с живым предпросмотром в Renym на macOS

Захватывающие группы в действии

Допустим, файлы называются «2026-03-15_project_alpha.pdf», а вы хотите получить «project_alpha_2026-03-15.pdf». Напишите регулярное выражение, которое захватывает дату и название проекта как отдельные группы, а затем переставьте их местами в поле замены. Столбец предпросмотра мгновенно покажет новое имя каждого файла.

Удаление по шаблону

Нужно убрать все суффиксы версий вроде «_v1», «_v2», «_v14»? Регулярное выражение _v\d+ найдёт их все независимо от номера. Одно действие, один шаблон — и все файлы очищены.

Комбинируйте regex с другими действиями

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

Если вы хоть раз теряли час на отладку команды переименования в Terminal или вовсе избегали regex, потому что не было способа посмотреть результат заранее, Renym решает обе проблемы сразу.

Загрузить Renym в Mac App Store

Следующая статья

Renym

Rename hundreds of files with visual pipelines — regex, numbering, case changes.

Get Renym on the Mac App Store