PDA

Показать полную графическую версию : [решено] Как скопировать весь каталог кроме нескольких папок?


N0MAK
22-03-2011, 09:37
Добрый день.Подскажите пожалуйста как это можно сделать?
Задача.Допустим с диска C: скопировать на D:\temp все папки и файлы кроме "Windows,Program files,Documents and Settings"

Petya V4sechkin
22-03-2011, 10:55
N0MAK, создаете текстовый файл (к примеру, Exclude.lst) со списком исключений:
C:\$Recycle.Bin\
C:\Documents and Settings\
C:\Program Files\
C:\RECYCLED\
C:\RECYCLER\
C:\System Volume Information\
C:\Windows\

и копируете:
Xcopy C:\* D:\temp /Exclude:Exclude.lst /E /H

N0MAK
22-03-2011, 11:44
Спасибо за ответ.
Сделал все как вы написали, но у меня почему то копируются только файлы, а папки которых нет в списке исключений не копируются.

Petya V4sechkin
22-03-2011, 12:08
N0MAK, добавьте опцию /C

N0MAK
22-03-2011, 12:48
Petya V4sechkin, Спасибо. Все работает!

N0MAK
01-02-2012, 20:37
Petya V4sechkin, Здравствуйте. Спустя некоторое время возник серьезный вопрос по параметру /Exclude
Предположим на диске C: находятся папки с именами 1,2,3 а в папке 3 находится другие папки с именем 1 и 2
если выполнить команду Xcopy C:\* D:\temp /Exclude:Exclude.lst /E /H
Exclude.lst

1
2

то копируется только папка 3 а находящиеся в ней папки 1 и 2 тоже попадут под исключение
Подскажите пожалуйста. Как сделать так чтобы исключение не распространялось на вложенные папки?

Я разобрался сам.
Если речь идет о корне диска то список должен выглядеть так.
Exclude.lst
:\1
:\2

если далеко от корня к примеру xcopy C:\data1\data2\* D:\temp /Exclude:Exclude.lst /E /H
то Exclude.lst
data2\1
data2\2




© OSzone.net 2001-2012