BATch Processing: автоматическое переименование файлов

Переименовать все файлы в текущем, либо в заданном каталоге с помощью стандартного пакетного .BAT скрипта Windows.

 Предположим, что у вас есть 1000500 неких графических (или иного типа) файлов, например, цифровых снимков, на которых вы со своим котом, отмечаете его день рождения.
В общем, вам нужно привести имена этих файлов в определённое, последовательное наименование по шаблону 00001.jpg, 00002.jpg, 00003.jpg... - ...00184.jpg, 00185.jpg, 00186.jpg и т. д. Для этого, мы воспользуемся стандартным пакетным сценарием Windows, скриптом, который по щелчку, будет мгновенно (ну почти) переименовывать все наши файлы, в чёткую последовательность от 0001 до... бесконечности.

  1. Создайте каталог INPUT и поместите в него «груду» своих *.JPG файлов, которые собираетесь переименовать.
  2. Откройте обычный Блокнот Windows и скопируйте код ниже в Блокнот, сохраните ваш файл с расширением BAT ("Сохранить как... ---> Все файлы ---> RENAMER.bat") рядом с нашей папкой INPUT.

Пакетный сценарий:

@COLOR 0A
@MODE CON COLS=130 LINES=50
@ECHO.

@ECHO OFF
setlocal enabledelayedexpansion

SET i=100000
SET X=1
FOR %%a IN (INPUT\*.png;INPUT\*.jpg;INPUT\*.gif) DO (
    SET /A i+=1
    SET /A n+=1
    SET "filename=!i:~%X%!"
    ECHO   Rename "%%a" --- "!filename!%%~xa"
    REN "%%a" "!filename!%%~xa"
)

@ECHO.
@ECHO      %n% files have been renamed
@ECHO.

@PAUSE

 Запускаем наш скрипт щелчком и... Откроется «красивое» окно консоли, со списком переименованных файлов, примерно так (только намного быстрее):

 Не забудьте заглянуть в папку INPUT и полюбоваться на свои «новые» файлы!

  Важные примечания:

  1. Типы файлов с определёнными расширениями и каталог, где они находятся, указывается в строке FOR %%a IN (INPUT\*.png;INPUT\*.jpg;INPUT\*.gif). Оператор циклической обработки FOR будет получать результаты именно из папки INPUT, а не откуда-то ещё. Это сделано не случайно, а для того, что бы вы не натворили «делов», в процессе своих маленьких экспериментов и не переименовали пол Винды
    Всё просто: помещаем исходные файлы в каталог INPUT, указываем их тип (расширение), например текстовые (txt) в строке FOR %%a IN (INPUT\*.txt) и применяем скрипт.
  2. Диапазон нумерации указывайте в строке SET i=100000. Нужно меньше нулей? Уменьшаете значение переменной i=100000 со 100000 до 10000 или вообще до 1000
  3. В конце скрипта имеется команда @PAUSE - что бы вы смогли посмотреть результаты выполнения в окне консоли. Если хотите, что бы скрипт «мелькнул», выполнил свою задачу и исчез с глаз долой - уберите команду@PAUSE.
Добавлено: 19.02.2024, 17:15 | Последнее обновление: 19.02.2024, 17:15

Comments

Popular posts from this blog

BATch Processing: автоматическое удаление файлов и папок в каталоге

Blogger: скрыть боковое меню (Sidebar) в шаблоне Contempo