меня интересовал оригинал
вопрос здесь и связанные с ним.
Для ответа, на этой неделе я сделал несколько
эксперименты с XCOPY.
Чтобы помочь ответить на оригинальный вопрос, здесь
Я публикую результаты своих экспериментов.
Я делал эксперименты на Windows 7 64 бит
Профессиональный SP1 с копией XCOPY
который пришел с операционной системой.
Для экспериментов я написал некоторый код в
язык сценариев Open Object Rexx
и редактор макросов языка Kexx с
текстовый редактор KEdit.
XCOPY был вызван из кода Rexx.
Код Kexx отредактировал вывод на экран
XCOPY сосредоточиться на важнейших результатах.
Все эксперименты были связаны с использованием
XCOPY скопировать один каталог с несколькими
файлы и подкаталоги.
Эксперимент состоял из 10 случаев.
Каждый случай приводил аргументы к XCOPY
и позвонил XCOPY один раз. Все 10 случаев были
пытаясь сделать то же самое копирование
работа.
Вот основные результаты:
(1) Из 10 случаев только три
копирование. Остальные 7 случаев сразу,
просто от обработки аргументов до
XCOPY, выдавал сообщения об ошибках, например,
Invalid path
Access denied
без скопированных файлов.
Из трех дел, которые делали копирование, они
все сделали одинаковое копирование, то есть дали
те же результаты.
(2) Если хотите скопировать каталог X и все
файлы и каталоги в каталоге X,
в иерархическом дереве файловой системы
корень в каталоге X, то, по-видимому,
XCOPY - и это, кажется, большая часть
оригинальный вопрос - просто не сделаю
что.
Одним из следствий является то, что если использовать XCOPY для
скопируйте каталог X и его содержимое, затем
МОЖЕТ скопировать содержимое, но НЕ МОЖЕТ скопировать
сам каталог X; таким образом, потерять
отметка даты и времени в каталоге X, его
архивный бит, данные о владении,
атрибуты и т. д.
Конечно, если каталог X является подкаталогом
каталога Y, XCOPY Y скопирует
все содержимое каталога Y С
каталог X. Таким образом, таким образом можно получить копию
каталога X. Однако копия
каталог X будет иметь свою метку даты и времени
времени пробега XCOPY и НЕ
отметка даты и времени оригинала
каталог X.
Это изменение меток даты и времени может быть
неудобно для копии каталога с
много загруженных веб-страниц: HTML
файл веб-страницы будет иметь свой
оригинальная отметка даты и времени, но
соответствующий подкаталог для используемых файлов
по HTML-файлу будет дата-время
печать пробега XCOPY. Так когда
сортировка копии по отметкам времени, все
подкаталоги, файлы HTML и
соответствующие подкаталоги, например,
x.htm
x_files
может появляться далеко друг от друга в
Время-дата.
Иерархические файловые системы уходят очень далеко,
IIRC в Multics в Массачусетском технологическом институте в 1969 году, а с
тогда многие люди признали
два случая, учитывая каталог X, (i) копия
каталог X и все его содержимое и (ii)
скопировать все содержимое X, но не
Сам каталог X Ну если только из
эксперименты, XCOPY делает только (II).
Итак, результаты 10 случаев приведены ниже.
Для каждого случая в результатах первый
три строки имеют первые три аргумента
к XCOPY. Итак, первая строка имеет дерево
имя каталога, который будет скопирован,
'источник'; вторая строка имеет дерево
название каталога для получения копий,
пункт назначения, а третья строка
варианты для XCOPY. Остальные 1-2
строки имеют результаты прогона
XCOPY.
Одна важная особенность вариантов заключается в том, что
Параметры / X и / O приводят к результату
Access denied
Чтобы увидеть это, сравните случай 8 с другим
дел, которые были одинаковыми, не было / х
и / O, но скопировал.
эти эксперименты у меня лучше
понять XCOPY и дать ответ
к первоначальному вопросу.
======= case 1 ==================
"k:\software\dir_time-date\"
"k:\software\xcopy002_test\xcopy002_test_dirs\output_sub_dir_1\"
options = /E /F /G /H /K /O /R /V /X /Y
Result: Invalid path
Result: 0 File(s) copied
======= case 2 ==================
"k:\software\dir_time-date\*"
"k:\software\xcopy002_test\xcopy002_test_dirs\output_sub_dir_2\"
options = /E /F /G /H /K /O /R /V /X /Y
Result: Access denied
Result: 0 File(s) copied
======= case 3 ==================
"k:\software\dir_time-date"
"k:\software\xcopy002_test\xcopy002_test_dirs\output_sub_dir_3\"
options = /E /F /G /H /K /O /R /V /X /Y
Result: Access denied
Result: 0 File(s) copied
======= case 4 ==================
"k:\software\dir_time-date\"
"k:\software\xcopy002_test\xcopy002_test_dirs\output_sub_dir_4\"
options = /E /F /G /H /K /R /V /Y
Result: Invalid path
Result: 0 File(s) copied
======= case 5 ==================
"k:\software\dir_time-date\"
"k:\software\xcopy002_test\xcopy002_test_dirs\output_sub_dir_5\"
options = /E /F /G /H /K /O /R /S /X /Y
Result: Invalid path
Result: 0 File(s) copied
======= case 6 ==================
"k:\software\dir_time-date"
"k:\software\xcopy002_test\xcopy002_test_dirs\output_sub_dir_6\"
options = /E /F /G /H /I /K /O /R /S /X /Y
Result: Access denied
Result: 0 File(s) copied
======= case 7 ==================
"k:\software\dir_time-date"
"k:\software\xcopy002_test\xcopy002_test_dirs\output_sub_dir_7"
options = /E /F /G /H /I /K /R /S /Y
Result: 20 File(s) copied
======= case 8 ==================
"k:\software\dir_time-date"
"k:\software\xcopy002_test\xcopy002_test_dirs\output_sub_dir_8"
options = /E /F /G /H /I /K /O /R /S /X /Y
Result: Access denied
Result: 0 File(s) copied
======= case 9 ==================
"k:\software\dir_time-date"
"k:\software\xcopy002_test\xcopy002_test_dirs\output_sub_dir_9"
options = /I /S
Result: 20 File(s) copied
======= case 10 ==================
"k:\software\dir_time-date"
"k:\software\xcopy002_test\xcopy002_test_dirs\output_sub_dir_10"
options = /E /I /S
Result: 20 File(s) copied