3

Я осмотрелся вокруг, и я нашел кое-что, что вроде работало, но я новичок во всех этих пакетных вещах.

Я ищу пакетный скрипт, который будет копировать одну папку и все в ней. Папка называется

Мастер упаковки

Затем я хочу сделать 1000 копий этой папки и переименовать каждую из них последовательно:

AE 0001

в

AE 1000

Если кто-то сможет помочь, было бы здорово, если бы они тоже могли объяснить этот процесс, чтобы я мог узнать, как он складывается вместе, и поставить себя в более выгодное положение для дальнейшей настройки позже.

1 ответ1

7

Как скопировать папку 1000 раз с именем "AE 0001" до "AE 1000"

Используйте следующий пакетный файл:

@echo off
setlocal
setlocal EnableDelayedExpansion
rem loop 1000 times
for /l %%i in (1,1,1000) do (
  rem prefix the count with leading zeros
  set "_number=000%%i"
  rem recursively copy the directory and its contents
  rem target name is "AE " + 4 digit count with leading zeros
  xcopy "Package Master" "AE !_number:~-4!" /s /i
  )
endlocal

Есть ли способ установить его, чтобы начать с определенного номера и забрать оттуда?

Так начать с AE 0140 и подняться оттуда, например?

Просто измените цикл for /l следующим образом:

for /l %%i in (140,1,1000) do (

Синтаксис

FOR /L %%parameter IN (start,step,end) DO command 

ключ

  • начало: первый номер
  • шаг: сумма, на которую увеличивается последовательность
  • конец: последний номер

Источник - для / л


Дальнейшее чтение

  • Индекс AZ командной строки Windows CMD - Отличный справочник по всем вопросам, связанным с командной строкой Windows.
  • enabledelayedexpansion - отложенное расширение приведет к тому, что переменные будут расширяться во время выполнения, а не во время анализа.
  • for /l - условно выполнить команду для диапазона чисел.
  • set - отображать, устанавливать или удалять переменные окружения CMD. Изменения, сделанные с помощью SET, будут сохраняться только в течение текущего сеанса CMD.
  • переменные - извлечение части переменной (подстроки).
  • xcopy - копирует файлы и / или деревья каталогов в другую папку.

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