1

Как переименовать набор таких файлов в командной строке Windows?

текущие имена файлов:

file111.txt  
file112.txt  
file113.txt  

после переименования имен файлов:

file0111.txt  
file0112.txt  
file0113.txt  

Как мне этого добиться?

1 ответ1

2

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

for %%f in (file???.txt) do call :ren %%f
goto :eof

:ren
    set name=%1
    ren "%name%" "%name:~0,4%0%name:~4%"

    :: Here, %name:~0,4% takes the first four characters, then you add a "0",
    :: and %name:~4% is everything after the fourth character.

Другой возможный способ, который проверяет все файлы, начиная с file100.txt и т.д., Может быть медленнее:

for /l %f in (100,1,999) do if exist "file%f.txt" ren "file%f.txt" "file0%f.txt"

(Если вы хотите поместить это в пакетный файл, вам нужно изменить %f на %%f , как в первом примере.)

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