Пакетное (скопировать все файлы в папку) с циклом - PullRequest
3 голосов
/ 08 октября 2010

Может кто-нибудь помочь мне с циклом в пакетном режиме для Windows? я хочу сделать скрипт, который позволит мне сделать что-то вроде этого:

1. copy all folders and files from Drive I: to X:\folder0001;
2. when done display: "Done"; (i ejected cd)
3. "enter" to next copy;

1. copy all folders and files from Drive I: to X:\folder0002;
2. when done display: "Done"; (i ejected cd)
3. "enter" to next copy;

...

1. copy all folders and files from Drive I: to X:\folder0010;
2. when done display: "Done"; (i ejected cd)
3. "enter" to next copy;


button q = exit

Копировать я делаю, меняя номер вручную:

для %% f в (i :) do xcopy %% f X: \ folder001 \ / e,

Я хочу только нажать Enter и изменить CD

но я не знаю, как создать этот скрипт: (

Ответы [ 2 ]

3 голосов
/ 08 октября 2010

Попробуйте следующее:

@echo off
setlocal enabledelayedexpansion
set number=1
FOR /L %%C IN (1,1,100) DO (
  set dest=!number!
  for %%N in (9999 999 99 9) do if !number! LEQ %%N set dest=0!dest!
  xcopy I\*.*I:\folder!dest!" /E /I
  ECHO *** CHANGE CD OR CTRL-C TO QUIT****
  PAUSE
  set /a number+=1
)

Не думаю, что есть способ проверить ввод с клавиатуры.

0 голосов
/ 08 октября 2010

Не вся помощь здесь, но хотя бы некоторая:)

@echo off
if %1. == . GOTO NOPARM
if %2. == . GOTO NOPARM

FOR /F "tokens=*" %%G IN ('DIR /B /AD %1*') XCOPY %%G %2 /e

GOTO END

:NOPARM
echo missing folder name

:END

сообщение отсутствует ... не знаю, как приостановить его на каждой итерации: (

...