2015-05-01 3 views
-1

Я пытаюсь скопировать папку из одного места в сетевое место. Но я хочу исключить некоторую папку из копии.Как исключить некоторые файлы из копирования с помощью xcopy?

:: time and date stamp YYYYMMDD, HHMMSS and YYYY-MM-DD_HH-MM-SS 
@echo off 
for /f "delims=" %%a in ('wmic OS Get localdatetime ^| find "."') do set dt=%%a 
set datestamp=%dt:~0,8% 
set timestamp=%dt:~8,6% 
set YYYY=%dt:~0,4% 
set MM=%dt:~4,2% 
set DD=%dt:~6,2% 
set HH=%dt:~8,2% 
set Min=%dt:~10,2% 
set Sec=%dt:~12,2% 

set stamp=%YYYY%-%MM%-%DD%T%HH%-%Min%-%Sec% 
mkdir "\\serv1\b$\Script Backup\%stamp%" 
XCOPY C:\source "\\serv1\b$\Script Backup\%stamp%" /S 

Эта команда xcopy скопирует весь источник C: \ в сетевое расположение. но я хочу, чтобы исключить следующие directores, которые в настоящее время находятся в C: \ источник

Я хочу, чтобы исключить следующие папки

C:\source\dba 
C:\source\staging 
C:\source\testing 

Как я могу это сделать?

ответ

1

По Product Documentation - Xcopy:

/исключить: filename1 [+ [filename2]] [+ [имя_файла3]]: Определяет список файлов, содержащих строки.

и (курсив наш):

Список каждая строка в отдельной строке в каждом файле. Если какая-либо из перечисленных строк соответствует любой части абсолютного пути файла для копирования, этот файл затем исключается из процесса копирования. Например, если вы укажете строку «\ Obj \», вы исключите все файлы под каталогом Obj. Если вы укажете строку «.obj», вы исключите все файлы с расширением .obj.

Таким образом, создать файл (например exclude.txt) содержит:

C:\source\dba 
C:\source\staging 
C:\source\testing 

и поручить /исключить: параметр, чтобы обратиться к нему:

XCOPY C:\source "\\serv1\b$\Script Backup\%stamp%" /S /exclude:exclude.txt 
Смежные вопросы