Вопрос: Как добавить расширение файла к файлам, которые не имеют расширения в определенной папке с помощью командной строки Windows?


У меня есть папка (скажем c:\folder), в котором много файлов. Все они являются документами HTML. Но некоторые из них не .html расширение. Я хочу добавить их .html расширение файла с помощью командной строки сразу.

Все файлы, которые не имеют расширения, заканчиваются ^ персонаж. Все имена файлов имеют разную длину.

я пытался

ren *^ *^.html

но он не переименовал все файлы и не потребовал, чтобы

Существует уже существующий файл с тем же именем или файлом, который не найден


2
2018-06-19 08:19


Источник




Ответы:


^ является escape-символом в cmd.exe. Вы должны избежать этого. Пытаться ren *^^ *^^.html,


1
2018-06-19 18:45





Я пробую это, и он работает:

  C:\test>ren *. *.html

enter image description here


Обновить : с ^ в названии:

enter image description here


3
2018-06-19 20:55



Спасибо, но не все файлы, которые нужно изменить. Просто файлы, которые не имеют расширения - Özkan ÖZLÜ
@ ÖzkanÖZLÜ Только файлы, которые не имеют расширения, будут меняться. Другие остаются неизменными. - Abraham
например, я попытался «А ^» а также "B.html" в "контрольная работа" папка. И после, у меня есть а ^ .html а также b.html внутри. - Abraham
@ user3580433 вы не можете увидеть переименование для b.html, поскольку он был ранее сам b.html: \ иными словами, он переименован, но поскольку до переименования имя файла и расширение было таким же, вы думаете, что это не изменилось - Sathya♦
У меня есть 'Синтаксис команды неверен', когда я применяю следующую команду: ren *. *.html - Özkan ÖZLÜ


Следующие работы (вы можете сначала добавить эхо перед Ren чтобы команда выполняла то, что вы хотите):

for %f in (*.) do ren "%f" "%f.html"

Вам нужны кавычки, если имя файла имеет встроенные пробелы.


1
2018-06-19 12:16



это не сработало. ни ошибка не произошла, ни изменение - Özkan ÖZLÜ
Он отлично работает для меня. Убедитесь, что вы можете видеть файлы, которые хотите переименовать при вводе for %f in (*.) do echo %f, Если нет, отправьте сообщение dir и я воссоздаю те же имена файлов и посмотрю, что произойдет. - AFH


Возможно, не то, что вы ищете, но если вы можете перейти в каталог в explorer.exe, вы можете отсортировать по типу файла, выбрать все без ext, перенести их в новую папку, сдвинуть + щелкнуть правой кнопкой мыши, откройте здесь окно команд, Command : ren * * .ext, выберите все вырезать, назад, вставить, сделать!


1
2017-10-06 20:53



Разве это уже не было в другом ответе? - Pimp Juice IT