Переименовать файлы на основе списка

-1
задан Ansgar Wiechers 18 January 2019 в 10:23
поделиться

1 ответ

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

@echo off
for /f "tokens=1,*" %%i in (list.txt) do (
   if exist "%%i.txt" %%j copy /Y "%%i.txt" "%%j.txt"

)

Вы может потребоваться добавить /Y для подавления запроса на перезапись файлов. Однако, если вы не хотите перезаписывать и, возможно, на более позднем этапе содержимое исходных файлов может потребоваться добавить к существующим новым файлам, тогда вы можете проверить наличие целевого файла и добавить:

@echo off
for /f "tokens=1,*" %%i in (list.txt) do (
   if exist "%%i.txt" if not exist "%%j.txt copy "%%i.txt" "%%j.txt"
   if exist "%%j.txt" type "%%i.txt">>"%%j.txt"
)
0
ответ дан Gerhard Barnard 18 January 2019 в 10:23
поделиться
Другие вопросы по тегам:

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