1

Как удалить ненужные точки в имени файла в пакетном скрипте Windows, например:

a.b.c.txt to a.txt

2 ответа2

3

Информация, содержащаяся в ссылке SS64, которую опубликовал Чарли Уилсон, появилась из моего сообщения SU: как команда Windows RENAME интерпретирует подстановочные знаки? , К сожалению, нет простого синтаксиса REN, который может делать то, что вы хотите.

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

for %a in (*) do @for /f "eol=. delims=." %b in ("%a") do @ren "%a" "%b%~xa"

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

for /f "eol=: delims=" %a in ('dir /b /a-d *^|findstr /blv .') do @for /f "eol=. delims=." %b in ("%a") do @ren "%a" "%b%~xa"

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

0

Команда ren. Существует очень подробное объяснение использования этой команды с подстановочными знаками по ссылке ниже.

Ren - переименовать SS64.com

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .