Preloader image
 
XCOPY
542
page-template-default,page,page-id-542,simplicity-core-1.0.3,simplicity-theme-ver-2.0.3,ajax_fade,page_not_loaded,smooth_scroll

XCOPY

XCOPY Kopiuje pliki i podkatalogi (z ładowaniem do pamięci)

TYP: ZEWNĘTRZNY

POSTAĆ:
XCOPY źródło [przeznaczenie] [/A|/M] [/D:data] [/P] [/S[/E]] [/V][/W]

ZNACZENIE: Kopiuje pliki i katalogi, włączając podkatalogi, jeżeli istnieją. Działanie komendy XCOPY zdecydowanie różni się od COPY samą metodą kopiowania, nie mówiąc już o zakresie kopiowanych obiektów. Otóż COPY kopiuje sektor po sektorze co w przypadku różnych urządzeń oznacza ciągłe przechodzenie z jednego napędu na drugi. Natomiast XCOPY czyta wszystkie zbiory źródłowe z pierwszego napędu, jakie tylko zdoła pomieścić aktualnie wolna pamięć operacyjna, a następnie przechodzi na drugi napęd i „zrzuca” je do ścieżki końcowej. Pojawia się wtedy komunikat: „Reading source file(s) …”. Czyli nie ma ciągłego odwoływania się do różnych napędów, co powoduje, że XCOPY działa o wiele szybciej niż COPY. Jedynie w przypadku kopiowania małych i pojedynczych zbiorów wygodnie jest korzystać z komendy COPY zwłaszcza, że COPY jest zleceniem wewnętrznym a XCOPY zewnętrznym. Ponadto za pomocą COPY można łączyć czyli dodawać zbiory a XCOPY tego już nie wykonuje.
Pierwszy zestaw parametrów napęd i ścieżka określa plik źródłowy lub katalog, który ma być kopiowany, drugi zestaw określa plik lub katalog docelowy. Przynajmniej jeden z parametrów określających źródło musi zostać podany. Jeżeli parametry określające kopię nie zostaną podane, kopia będzie umieszczona w katalogu roboczym. Jeżeli parametr ścieżka nie zostanie podany, wybrany będzie katalog roboczy oraz wszystkie zbiory jakie tam są, czyli wybrany będzie plik ..

PARAMETRY:
/A Kopiuje pliki źródłowe, mając ustawiony atrybut archive, ale nie powoduje modyfikacji tego bitu. Ustawianie tego atrybutu wykonuje się za pomocą zlecenia attrib.

/M Działa tak samo jak przełącznik /a za wyjątkiem tego, że kasuje atrybut archive kopiowanych plików Ustawianie tego atrybutu wykonuje się za pomocą zlecenia ATTRIB.

/D:data Kopiuje pliki źródłowe, które zostały zmodyfikowane później niż określa to data. Należy zauważyć, że format daty może być zmienny zależnie od kraju, do wymagań którego system operacyjny został przygotowany (patrz zlecenie DATE).

/P Powoduje wyświetlenie zapytania „Y/N?” umożliwiając dokonanie wyboru czy kopiować plik czy nie.

/S Kopiuje katalogi i podkatalogi pod warunkiem, że nie są puste. Jeżeli przełącznik ten nie zostanie podany, to zostanie skopiowana zawartość pojedynczego katalogu.

/E Kopiuje każdy podkatalog, nawet jeżeli jest pusty. Tego przełącznika należy używać wraz z /s.

/V Powoduje weryfikację każdego zapisu, sprawdzając czy kopia i oryginał są identyczne.

/W Powoduje wstawienie pauzy przed rozpoczęciem kopiowania.

Na ekranie zostanie wyświetlony komunikat:
Press any key when ready to start copying files
(By rozpocząć kopiowanie, naciśnij dowolny klawisz)

Kombinacja klawiszy CONTROL-C lub CONTROL-BREAK powoduje przerwanie wykonania zlecenia XCOPY w dowolnym momencie.

SUPER WAŻNE: Zlecenie XCOPY nie kopiuje plików, które mają atrybut HIDDEN (ukryty – dla komend DOS-a) oraz SYSTEM. Jeśli chcesz kopiować takie zbiory to albo wpierw musisz usunąć te atrybuty albo użyć programów narzędziowych, jak: PCTOOLS, XTREE, SIDEKICK PLUS ’88 i inne specjalistyczne programy. Więcej, zlecenie XCOPY podczas kopiowania pliku z atrybutem READ ONLY (tylko do odczytu) usuwa automatycznie ten atrybut. Niemniej plik zostaje skopiowany.

Kody zakończenia:
0 Kopiowanie bez błędów
1 Nie znaleziono plików do kopiowania
2 Przerwanie użytkownika CONTROL-C
4 Błąd inicjalizacji: zbyt mało pamięci, niewłaściwy napęd lub błąd składniowy, nieznaleziony plik lub ścieżka
5 Błąd przerwania INT 24. Krytyczny błąd podczas odczytu lub zapisu

Przy przetwarzaniu programów Batch, można używać zlecenia IF w celu obsługi błędów wykorzystując powyższe kody.

PRZYKŁADY:
Poniższe zlecenie kopiuje całą zawartość dyskietki A: na B:, to znaczy wszystkie pliki i podkatalogi (włączając puste) z dysku A: na B:

XCOPY A: B: /S/E

Poniższe zlecenie kopiuje wszystkie zbiory typu *.exe z kartoteki C:\JEZYK\MODULA na dyskietkę A: do kartoteki \MODULA z weryfikacją zapisu dla wszystkich zbiorów:

XCOPY C:\JEZYK\MODULA*.EXE A:\MODULA /V