Как пакетно копировать и переименовывать файлы?
Я использую Windows Server 2012 R2. У меня есть папка с кучей файлов, и я хочу скопировать для каждого файла в этой папке 20 раз в другую папку, но недавно скопированный файл должен быть переименован с использованием одного алфавитного порядка. Например, файл с именем "orange.html" 20 раз копируется и перемещается в другую папку. Новая папка будет содержать 20 новых скопированных файлов с именами файлов, таких как a.html, b.html, c.html и т. Д.
Это код, но все он увеличивается на цифры, но я хочу увеличить на алфавит
@echo off
for /L %%i IN (1,1,100) do call :docopy %%i
goto end
:docopy
set FN=00%1
set FN=%FN:~-3%
copy source-file.html poll%FN%.html
:end
1 ответ
Решение
Все это увеличивается на цифры, но я хочу увеличить на алфавит
Следующий пакетный файл (test.cmd) должен начать работу:
@echo off
setlocal enableDelayedExpansion
set "chars=abcedefhijklmnopqrstuvwxyz"
for /l %%i in (0,1,25) do (
echo copy source-file.html folder\poll!chars:~%%i,1!.html
)
endlocal
Заметки:
- Это частичный ответ, потому что ваши требования не ясны.
- Используйте приведенный выше пакетный файл в качестве отправной точки
- Он показывает, как построить имена файлов, используя инкрементальные буквы алфавита.
Пример вывода:
copy source-file.html folder\polla.html
copy source-file.html folder\pollb.html
copy source-file.html folder\pollc.html
copy source-file.html folder\polle.html
copy source-file.html folder\polld.html
copy source-file.html folder\polle.html
copy source-file.html folder\pollf.html
copy source-file.html folder\pollh.html
copy source-file.html folder\polli.html
copy source-file.html folder\pollj.html
copy source-file.html folder\pollk.html
copy source-file.html folder\polll.html
copy source-file.html folder\pollm.html
copy source-file.html folder\polln.html
copy source-file.html folder\pollo.html
copy source-file.html folder\pollp.html
copy source-file.html folder\pollq.html
copy source-file.html folder\pollr.html
copy source-file.html folder\polls.html
copy source-file.html folder\pollt.html
copy source-file.html folder\pollu.html
copy source-file.html folder\pollv.html
copy source-file.html folder\pollw.html
copy source-file.html folder\pollx.html
copy source-file.html folder\polly.html
copy source-file.html folder\pollz.html
Дальнейшее чтение
- Индекс AZ командной строки Windows CMD - Отличный справочник по всем вопросам, связанным с командной строкой Windows.
- enabledelayedexpansion - отложенное расширение приведет к тому, что переменные будут расширяться во время выполнения, а не во время разбора.
- for / l - условно выполнить команду для диапазона чисел.
- set - отображать, устанавливать или удалять переменные окружения CMD. Изменения, сделанные с помощью SET, будут сохраняться только в течение текущего сеанса CMD.
- переменные - извлекать часть переменной (подстроку).