Переименовать расширение файла в bat

Обновлено: 07.07.2024

Команда MOVE используется для перемещения или переименования файлов и каталогов. Формат командной строки:

Перемещение одного или более файлов:

MOVE [/Y | /-Y] [диск:][путь]имя_файла1[. ] назначение

MOVE [/Y | /-Y] [диск:][путь]имя_папки новое_имя_папки

Параметры командной строки:

[диск:][путь]имя_файла1 - Определяет местоположение файла или файлов, которые необходимо переместить.

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

[диск:][путь]имя_папки - Определяет папку, которую необходимо переименовать.

новое_имя_папки - Определяет новое имя папки.

/Y - Перезаписывать существующие файлы назначения без предупреждения.

/-Y - Предупреждать при перезаписи существующего файла назначения.

Ключ /Y может присутствовать в значении переменной среды окружения COPYCMD . Оно может перекрываться ключом /-Y в командной строке. По умолчанию используется предупреждение о перезаписи, если только команда MOVE не выполняется как часть пакетного файла.

move /? - отобразить подсказку по использованию команды.

move folder1 folder2 - переименовать папку с именем folder1 в folder2 в текущем каталоге.

move E:\test\folder1 E:\test\folder2 - переименование с указанием абсолютных путей.

move C:\file1.txt D:\ - переместить файл file1.txt с диска C: на диск D:

move c:\test\file1.txt D:\folder2\file2.txt - перенести файл file1.txt из каталога test диска C: в каталог folder2 диска D: под именем file2.txt

move C:\Folder1\*.* D:\Folder2\ - переместить все файлы из каталога Folder1 диска C: в каталог Folder2 диска D:

Реализация в ОС Windows данной команды не позволяет перемещать папки на другие логические диски.

move C:\folder1 C:\folder2\folder3\folder1 - переместить каталог folder1 из корня диска C: в подкаталог \folder2\folder3

При перемещении папки в несуществующий каталог он не будет создан автоматически и команда завершится ошибкой. Команда move не работает с файлами, имеющими атрибуты "скрытый " и "системный".


Возьмём ситуацию, в которую Вы могли попасть. Допустим, Вы загрузили игру или приложение, которое было разделено на 50 частей и помещено в архивы, но расширение оказалось не rar, а .bmp. Вы должны переименовать их все в .rar, чтобы извлечь.

Вы можете легко создать bat-файл, который позволит изменить расширение файла в Windows.

1. Откройте Блокнот

2. Вставьте следующую строку:

3. Сохраните полученный файл, как renamer.bat и запустите его в том каталоге, в котором расположены файлы для переименования.

Конечно, Вы должны будете отредактировать в Блокноте *.bmp *.rar, чтобы они соответствовали расширению файлов, которые Вы хотите преобразовать (Например, *.01 *.zip).

Бонус: Как с помощью Total Commander изменить расширение файла в Windows?

Первое, что нужно сделать, это скачать программу Total Commander. Советую сборку PowerPack.

Total Commander позволяет управлять файлами и служит заменой проводнику. Выглядит программа так:

total commander

Выбор файлов для переименования

В Total Commander, первое, что вы должны сделать, это выбрать файлы:

total commander - групповое переименование

Групповое переименование файлов

Изменить расширение файлов

расширение рар

изменённое расширение файлов

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

Запись опубликована 18/10/2008 автором Дмитрий Туторов в рубрике Система с метками bat-файл, Total Commander, изменить, расширение.

Как изменить расширения с помощью bat-файла? : 7 комментариев

Спасибо большое, это именно то, что я искал, т.к. изменить расширение требовалось у более, чем 20 000 файлов. СПАСИБО!

СПС
и мне пригодилось!!

Ааа, спасибо огромнейшее! Коротко и все понятно! Выручили просто не представляете. Спасибо еще раз

У меня есть .bat файл, рядом лежит папка.
В папке лежат .jpg файлы с разными именами. (1234567890.jpg, helloWorld.jpg, img-23012010.jpg)
Я пытаюсь написать в .bat файле чтобы он все эти файлы в этой папке переименовал.
Вот с таким названием file-001.jpg file-002.jpg file-003.jpg . file-069.jpg
Я не могу реализовать пересчёт файлов..
Вот примеры которые работают не корректно

^ Переименовывает только 1 файл, другие соответственно говорят НЕТ, такой уже среди нас есть..

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

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

Простой 3 комментария

wisgest

for /f %%I in ('dir /b ^| findstr /r ".*[.]jpg$"')
— почему так сложно?

ae_ph

wisgest, Ну как-бы маску задавал и передавал..
Расскажите, что вас смутило?

wisgest

Brendan Castaneda, в чём отличие от for %%I in (*.jpg') ? Чтобы избежать рассмотрения уже переименованных файлов? Переименовывайте в файлы с каким нибудь-другим расширением, а после выхода из цикла ren *.tmpjpg *.jpg .

ae_ph

Вот решение
Этот .bat файл переименует Jpg файлы из папки вот в такие файлы file-000.jpg, file-001.jpg, file-002.jpg


SetLocal EnableDelayedExpansion Раскрытие переменных через знаки (!)
cd /d Result заходим в папку Result
set "count=1000" переменная в которой я обозначил количество нулей file-001.jpg
set a="*.jpg" переменная обозначает какие файлы ищем.

(`dir /b /o:-d /tc %a%`)
dir - Позволяет отобразить список файлов и подкаталогов. Далее сортируем.
/b - Вывод только имен файлов.
/o:-d - Сортировка списка отображаемых файлов в обратном порядке ( от новых к старым ).
/tc - Сортировать по времени создания файла
%a% - Вызываем переменную

usebackq Задает возможность использования кавычек для имен файлов Такие вот> ".
Задает исполнение строки, заключенной в обратные кавычки, как команды Такие вот> `,
а строки в одиночных кавычках — как команды в символьной строке Такие вот> '.

delims=xxx Задает набор разделителей. Заменяет набор разделителей по умолчанию, состоящий из пробела и символа табуляции.

5c405c4004b89363498618.jpg


Есть бат-файл, который должен пройтись по всем папкам (имена папок всегда разные), которые лежат в одной директории с ним, и в каждой папке находится файл index.txt, который и нужно переименовать в content.txt. Как это сделать?
  • Вопрос задан более двух лет назад
  • 3582 просмотра

axifive

ae_ph

Вот моё решение это не ответ на вопрос, но я хочу оставить это сдесь, для похожих запросов.
Этот .bat файл переименует .Jpg файлы из папки Result вот в такие файлы file-000.jpg, file-001.jpg, file-002.jpg
Папка Result находится рядом с bat файлом.
Изначально в папке Result имена у .Jpg файлов могут быть абсолютно разными.. Не имеет значения.


SetLocal EnableDelayedExpansion Раскрытие переменных через знаки (!)
cd /d Result заходим в папку Result
set "count=1000" переменная в которой я обозначил количество нулей file-001.jpg

set "count=1000" Отсчёт начинается с file-000.jpg затем file-001.jpg и т.д.
set "count=1001" Отсчёт начинается с file-001.jpg затем file-002.jpg и т.д.

set a="*.jpg" переменная обозначает какие файлы ищем.

(`dir /b /o:-d /tc %a%`)
dir - Позволяет отобразить список файлов и подкаталогов. Далее сортируем.
/b - Вывод только имен файлов.
/o:-d - Сортировка списка отображаемых файлов в обратном порядке ( от новых к старым ).

/o:d - Сортировка списка отображаемых файлов ( от старых к новым ).
Если вам нужно изменить порядок сортировки файлов.

%a% - Вызываем переменную

usebackq Задает возможность использования кавычек для имен файлов Такие вот> ".
Задает исполнение строки, заключенной в обратные кавычки, как команды Такие вот> `,
а строки в одиночных кавычках — как команды в символьной строке Такие вот> '.

delims=xxx Задает набор разделителей. Заменяет набор разделителей по умолчанию, состоящий из пробела и символа табуляции.

Читайте также: