Как я изменяю символ, встроенный в имена файлов к другому символу?

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

ABC12345_DEF --> ABC12345.DEF

Я должен сделать это рекурсивно через дерево каталогов.
Последние три символа имени файла являются не всегда тем же.

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

0
задан 27.11.2012, 21:56

2 ответа

Следующее должно работать. Я использовал move вместо ren из-за особенностей ren в обработке имен файлов в кавычках.

for /f "tokens=1,2 delims=_" %i in ( 'dir /s/b *_*.' ) do @( move "%i_%j" "%i.%j" )

Можно удалить @ если требуется визуально отследить прогресс команды.

0
ответ дан 24.11.2019, 12:09

изменение, что я нашел в этом пакете, переименовывает/перемещает сценарий, это должно работать:

for /r %x in (*_*) do ren "%x" *.*
0
ответ дан 24.11.2019, 12:09

Теги

Похожие вопросы