Поделиться через


PowerRename служебная программа для Windows

PowerRename Windows— это средство массового переименования, которое позволяет быстро переименовать несколько файлов одновременно. Эта программа PowerToys помогает вам:

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

Подсказка

Вы можете использовать помощь ИИ для создания регулярных выражений для использования в PowerRename с copilot.

Демонстрация

В этой демонстрации все экземпляры имени файла foo заменяются на foobar. Поскольку все файлы имеют уникальные имена, это заняло бы много времени, если выполнять их вручную по одному. PowerRename позволяет выполнить одно массовое переименование. Обратите внимание, что команда Обозревателя "Отменить переименование" (CTRL+Z) позволяет отменить последнее изменение.

PowerRename Демонстрация

окно PowerRename

После выбора файлов в WindowsFile Explorer, щелкните правой кнопкой мыши и выберите Переименовать с PowerRename (которое будет отображаться только в том случае, если оно включено в PowerToys). Выбранные элементы будут отображаться вместе со значениями поиска и замены, списком параметров и панелью предварительного просмотра, отображающей результаты поиска и замены введенных значений.

PowerRename Снимок экрана меню

Искать

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

Заменить на

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

Использование регулярных выражений

Если выбрано, значение поиска будет интерпретировано как регулярное выражение (regex). Значение Replace также может содержать переменные regex (см. примеры ниже). При очистке значение поиска будет интерпретировано как обычный текст, который будет заменен текстом в поле "Заменить".

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

Сопоставление всех вхождений

Если выбрана эта опция, все совпадения текста в поле поиска будут заменены заменяющим текстом. В противном случае будет заменено только первое вхождение текста Search for в имени файла.

Например, укажите имя файла: powertoys-powerrename.txt

  • Поиск: power
  • Переименовать на: super

Значение переименованного файла приведет к следующим результатам:

  • Удалены все совпадения: supertoys-powerrename.txt
  • Сопоставить все выбранные вхождения: supertoys-superrename.txt

С учетом регистра

Если выбрано, текст, указанный в поле поиска , будет совпадать только с текстом в элементах, если текст совпадает. Сопоставление регистра по умолчанию будет нечувствительно.

Применить к: только имя файла

Только имя файла изменяется операцией. Например, txt.txtNewName.txt.

Относится к: только расширению

Только расширение файла изменяется операцией. Например, txt.txttxt.NewExtension.

Включить файлы

Очистка приводит к тому, что файлы не будут включены в операцию.

Включить папки

Очистка приводит к тому, что папки не будут включены в операцию.

Включить вложенные папки

Очистка приводит к тому, что файлы в папках не будут включены в операцию. По умолчанию включены все элементы вложенных папок.

Форматирование текста

Выберите между четырьмя вариантами, чтобы преобразовать элементы в нижний регистр, все верхние регистры, заголовок (первый символ предложения прописывается) или прописывать каждое слово.

Перечисление элементов

Если выбрано, можно использовать следующие шаблоны в составе текста замены :

Шаблон переменной Объяснение
${} Простой счетчик, начинающийся с нуля для первого переименованного файла.
${increment=X} Счетчик с настраиваемым значением прироста.
${padding=X} Счетчик с указанным числом начальных нулей для числа.
${start=X} Счетчик с настроенным начальным значением.

Можно также использовать несколько счетчиков в одной строке замены и объединить настройки.

Например, дан текст поискаa и набор файлов:

  • a.jpg
  • ab.jpg
  • abc.jpg

Заменить на текст Image_${padding=4;increment=2;start=10}_ приведет к следующему:

  • Image_0010_.jpg
  • Image_0012_b.jpg
  • Image_0014_bc.jpg

Случайные строковые значения

Если выбрано, можно использовать следующие шаблоны в составе текста замены :

Шаблон переменной Объяснение
${rstringalnum=X} Случайные строки с прописными буквами, строчными буквами и 0-9 цифрами, настраиваемой длиной.
${rstringalpha=X} Случайная строка с прописными буквами и строчными буквами, настраиваемая длина.
${rstringdigit=X} Случайная строка с 0-9 цифрами, настраиваемая длина.
${ruuidv4} Случайный UUID в соответствии со спецификацией версии 4.

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

Если вы хотите создать значения UUID с фигурными скобками, можно добавить { и } в поле Заменить на в сочетании с шаблоном ruuidv4 соответственно: {${ruuidv4}}.

Замена с использованием даты и времени создания файла

Атрибуты даты и времени создания файла можно использовать в Заменить текстом, введя шаблон переменной в соответствии с таблицей ниже. Выбор подсказки в поле "Замена" позволяет просматривать и выбирать из поддерживаемых шаблонов.

Шаблон переменной Объяснение
$YYYY Год, представленный четырьмя или пятью цифрами в зависимости от используемого календаря.
$YY Год, представленный только последними двумя цифрами. Начальный нуль добавляется для однозначных годов.
$Y Год, представленный только последней цифрой.
$MMMM Имя месяца.
$MMM Сокращенное название месяца.
$MM Месяц в виде числа с ведущими нулями для однозначных месяцев.
$M Месяц в виде цифр без ведущих нулей для однозначных месяцев.
$DDDD Имя дня недели.
$DDD Сокращенное название дня недели.
$DD День месяца, в виде цифр с начальными нулями для однозначных дней.
$D День месяца в виде цифр без начальных нулей для однозначных чисел.
$hh Часы с начальными нулями для однозначных чисел.
$h Часы без начальных нулей для однозначных цифр.
$mm Минуты, с добавлением начальных нулей для однозначных минут.
$m Минуты без начальных нулей для однозначных минут менее 10.
$ss Секунды с начальными нулями для единичных секунд.
$s Секунды, без нулей для однозначных чисел.
$fff Миллисекунда, представленная полными тремя цифрами.
$ff Миллисекунда, представленная только первыми двумя цифрами.
$f Миллисекунда, представленная только первой цифрой.

Например, учитывая имена файлов:

  • powertoys.png, созданная 11.02.2020 (ноябрь второй)
  • powertoys-menu.png, созданная 03.11.2020 (третье ноября)

Введите условия для переименования элементов:

  • Поиск: powertoys
  • Переименовать на: $MMM-$DD-$YY-powertoys

Значение переименованного файла приведет к следующим результатам:

  • Nov-02-20-powertoys.png
  • Nov-03-20-powertoys-menu.png

Замена с помощью метаданных фотографий (EXIF или XMP)

При переименовании фотографий в поле "Замена" можно использовать метаданные EXIF или XMP. Выбрав параметр EXIF/MDF в поле со списком, шаблоны переменных, показанные в таблице ниже, становятся доступными. Подсказка предоставляет доступ ко всем поддерживаемым шаблонам для быстрой вставки.

Шаблон переменной Объяснение
$CAMERA_MAKE Имя производителя камеры
$CAMERA_MODEL Имя модели камеры
$LENS Имя модели объектива
$ISO Значение чувствительности ISO
$APERTURE Значение диафрагмы числа F
$SHUTTER Значение скорости затвора
$FOCAL Фокусная длина в миллиметрах
$FLASH Состояние флэш-памяти (вкл./выкл.)
$WIDTH Ширина изображения в пикселях
$HEIGHT Высота изображения в пикселях
$AUTHOR Автор изображения или художник
$COPYRIGHT Сведения об авторских правах
$LATITUDE Координата широты GPS
$LONGITUDE Координата долготы GPS
$ALTITUDE Высота GPS в метрах
$DATE_TAKEN_YYYY Год, когда была сделана фотография (4 цифры)
$DATE_TAKEN_YY Год съемки фото (2 цифры)
$DATE_TAKEN_MM Месяц, когда была сделана фотография (01–12)
$DATE_TAKEN_DD Фотография дня была сделана (01–31)
$DATE_TAKEN_HH Час, когда была сделана фотография (00–23)
$DATE_TAKEN_mm Минута, когда была сделана фотография (00–59)
$DATE_TAKEN_SS Вторая фотография была сделана (00–59)
$EXPOSURE_BIAS Значение компенсации экспозиции
$ORIENTATION Ориентация изображения
$COLOR_SPACE Сведения о цветовом пространстве
$ALTITUDE Высота GPS в метрах

Регулярные выражения

Для большинства вариантов использования достаточно простого поиска и замены. Однако могут возникнуть случаи, когда сложные задачи переименования требуют больше контроля. Регулярные выражения могут помочь в этом сценарии.

Регулярные выражения определяют шаблон поиска текста. Их можно использовать для поиска, редактирования и управления текстом. Для данной строки шаблон, определенный регулярным выражением, может совпадать один раз, несколько раз или вообще не совпадать. PowerRename использует грамматику ECMAScript , которая распространена среди современных языков программирования.

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

Чтобы использовать библиотеку Boost вместо стандартной библиотеки, выберите опцию Использовать библиотеку Boost в настройках PowerToys. Он включает расширенные функции, такие как lookbehind, которые не поддерживаются стандартной библиотекой.

Примеры регулярных выражений

Простые примеры сопоставления.

Искать Описание
^ Соответствует началу имени файла (нулевой размер)
$ Соответствует концу имени файла (нулевой размер)
.* Сопоставьте весь текст в имени
^foo Сопоставление текста, начинающегося с "foo"
bar$ Сопоставление текста, заканчивающегося на "bar"
^foo.*bar$ Текст, совпадающий с "foo" и заканчивающийся на "bar"
.+?(?=bar) Соединяйте все до «бар»
foo[\s\S]*bar Сопоставлять все между и включая "foo" и "bar"

Примеры сопоставления и переменных. Группы захвата определяются в скобках (). Чтобы ссылаться на них, используйте $, за которым следует номер: $1 будет относиться к первой группе, $2 ко второй и так далее. При использовании переменных необходимо выбрать "Совпадение всех вхождений".

Искать Заменить на Описание
(.*).png foo_$1.png Добавляет "foo_" к существующему имени файла для PNG-файлов.
(.*).png $1_foo.png Добавляет "_foo" в существующее имя файла PNG
(.*) $1.txt Добавляет расширение ".txt" к существующему файлу
(^\w+\.$)\|(^\w+$) $2.txt Добавляет расширение ".txt" к существующему имени файла только в том случае, если у него нет расширения
(\d\d)-(\d\d)-(\d\d\d\d) или (\d{2})-(\d{2})-(\d{4}) $3-$2-$1 Перемещение частей в имени файла: "29-03-2020" становится "2020-03-29"
^(.{n})(.*) или (.*)(.{n})$ $1foo$2 Вставьте "foo" n символы с начала или конца соответственно
^.{n} или .{n}$ ничто Обрезка символов: - с начала, - с конца соответственно.

Обратитесь к Copilot за помощью с регулярными выражениями

Вы можете получить помощь СИ от Copilot для создания простых или сложных регулярных выражений. Вы можете настроить запрос на создание строки в соответствии с вашими требованиями.

В следующем тексте показан пример запроса для Copilot:

Generate a regular expression to match a string that starts with "foo" and ends with "bar" and has at least six letters and two numeric characters in between them.

Copilot работает на основе искусственного интеллекта, поэтому возможны сюрпризы и ошибки. Дополнительные сведения см. в Часто задаваемые вопросы по Copilot.

Дополнительные ресурсы для обучения регулярных выражений

Существуют некоторые полезные примеры и памятки, которые помогут вам:

Учебник по регулярным выражениям

Руководство по регулярным выражениям JavaScript с примерами

Фильтры списка файлов

Фильтры можно использовать в PowerRename для сужения результатов переименования. Используйте панель предварительного просмотра , чтобы проверить ожидаемые результаты.

  • Исходный, первый столбец в панели Предварительного просмотра переключается между:

    • Выбрано: файл выбран для переименования
    • Очистка: файл не выбран для переименования (даже если он соответствует значению, введенное в критерии поиска)
  • Переименовано: второй столбец в области предварительного просмотра может быть переключён.

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

Демонстрация фильтра PowerToys PowerRename

Настройки

Дополнительные параметры можно настроить в параметрах, как описано ниже.

Настройки Описание
Отобразить PowerRename в PowerRename отображается как один из параметров по умолчанию или только в расширенном контекстном меню.
Значок скрытия в контекстном меню Скрывает PowerRename значок в контекстном меню.
Включить автозаполнение для полей поиска и замены Автоматически предлагать термины для использования в полях поиска и замены на основе предыдущих вариантов использования PowerRename.
Максимальное количество элементов Наибольшее количество отображаемых предложений поиска и замены.
Отображение недавно использованных строк При открытии PowerRenameзаполните поля поиска и замените последними значениями.
Использование Boost библиотеки Включите расширенные regex функциональные возможности. Дополнительные сведения см. в разделе "Регулярные выражения ".

Установка PowerToys

Эта программа входит в состав служебных программ Microsoft PowerToys для пользователей powerToys . Он предоставляет набор полезных инструментов для настройки и оптимизации вашего опыта работы с Windows для повышения производительности. Сведения об установке PowerToys см. в разделе "Установка PowerToys".