Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Kopiuje pliki i katalogi, w tym podkatalogi.
Przykłady użycia tego polecenia można znaleźć w temacie Przykłady.
Składnia
xcopy <Source> [<Destination>] [/w] [/p] [/c] [/v] [/q] [/f] [/l] [/g] [/d [:MM-DD-YYYY]] [/u] [/i] [/s [/e]] [/t] [/k] [/r] [/h] [{/a | /m}] [/n] [/o] [/x] [/exclude:FileName1[+[FileName2]][+[FileName3]]] [{/y | /-y}] [/z] [/b] [/j] [/compress]
Parametry
Parametr | Opis |
---|---|
<Źródło> | To jest wymagane. Określa lokalizację i nazwy plików, które chcesz skopiować. Ten parametr musi zawierać dysk lub ścieżkę. |
[<Miejsce docelowe>] | Określa miejsce docelowe plików, które chcesz skopiować. Ten parametr może zawierać literę dysku i dwukropek, nazwę katalogu, nazwę pliku lub kombinację tych parametrów. |
/w | Wyświetla następujący komunikat i czeka na odpowiedź przed rozpoczęciem kopiowania plików: Naciśnij dowolny, aby rozpocząć kopiowanie plików |
/p | Monituje o potwierdzenie, czy chcesz utworzyć każdy plik docelowy. |
/c | Ignoruje błędy. |
/v | Sprawdza, czy każdy plik jest zapisywany w pliku docelowym, aby upewnić się, że pliki docelowe są identyczne z plikami źródłowymi. |
/q | Pomija wyświetlanie komunikatów xcopy . |
/f | Wyświetla nazwy plików źródłowych i docelowych podczas kopiowania. |
/l | Generuje listę plików, które mają zostać skopiowane, ale nie kopiuje aktywnie plików. |
/g | Tworzy odszyfrowane pliki docelowe, gdy miejsce docelowe nie obsługuje szyfrowania. |
/d [:MM-DD-RRRR] | Kopiuje pliki źródłowe zmienione tylko w określonej dacie lub po określonej dacie. Jeśli nie dołączysz wartości MM-DD-RRRR , xcopy kopiuje wszystkie pliki źródłowe , które są nowsze niż istniejące pliki docelowe . Ta opcja wiersza polecenia umożliwia aktualizowanie zmienionych plików. |
/u | Kopiuje pliki ze źródła , które istnieją tylko w miejscu docelowym . |
/ja | Jeśli źródło jest katalogiem lub zawiera symbole wieloznaczne i miejsce docelowe nie istnieje, zakłada się, xcopy że miejsce docelowe określa nazwę katalogu i tworzy nowy katalog.
xcopy Następnie kopiuje wszystkie określone pliki do nowego katalogu. Domyślnie monituje o określenie, xcopy czy miejscem docelowym jest plik, czy katalog. |
/ s | Kopiuje katalogi i podkatalogi, chyba że są puste. Jeśli pominięto /s, xcopy działa w jednym katalogu. |
/e | Kopiuje wszystkie podkatalogi, nawet jeśli są puste. Użyj /e z /s i /t opcji wiersza polecenia. |
/t | Kopiuje strukturę podkatalogu (czyli tylko drzewo), a nie pliki. Aby skopiować puste katalogi, należy dołączyć / e opcji wiersza polecenia. |
/k | Kopiuje pliki i zachowuje atrybut tylko do odczytu w plikach docelowych , jeśli znajdują się w plikach źródłowych . Domyślnie xcopy usuwa atrybut tylko do odczytu. |
/r | Kopiuje pliki tylko do odczytu. |
/h | Kopiuje pliki z ukrytymi i systemowymi atrybutami plików. Domyślnie xcopy nie kopiuje ukrytych ani systemowych plików |
/a | Kopiuje tylko pliki źródłowe , które mają ustawione atrybuty pliku archiwum. /a nie modyfikuje atrybutu pliku archiwum pliku źródłowego. Aby uzyskać informacje o sposobie ustawiania atrybutu pliku archiwum przy użyciu attrib, zobacz Powiązane linki. |
/m | Kopiuje pliki źródłowe , które mają zestaw atrybutów pliku archiwum. W przeciwieństwie do /a, /m wyłącza atrybuty pliku archiwum w plikach określonych w źródle. Aby uzyskać informacje o sposobie ustawiania atrybutu pliku archiwum przy użyciu attrib, zobacz Powiązane linki. |
/n | Tworzy kopie przy użyciu krótkich nazw plików lub katalogów NTFS. /n jest wymagany w przypadku kopiowania plików lub katalogów z woluminu NTFS do woluminu FAT lub gdy konwencja nazewnictwa systemu plików FAT (czyli 8,3 znaków) jest wymagana w docelowym systemie plików. Docelowy system plików może być FAT lub NTFS. |
/o | Kopiuje informacje o własności plików i uznaniowej liście kontroli dostępu (DACL). |
/x | Kopiuje ustawienia inspekcji plików i informacje o systemowej liście kontroli dostępu (SACL) (implikuje /o). |
/exclude:NazwaPliku1[+[NazwaPliku2]][+[NazwaPliku3]( )] | Określa listę plików. Należy określić co najmniej jeden plik. Każdy plik zawiera ciągi wyszukiwania z każdym ciągiem w osobnym wierszu w pliku. Gdy dowolny z ciągów jest zgodny z dowolną częścią ścieżki bezwzględnej pliku do skopiowania, ten plik jest wykluczony z kopiowania. Na przykład określenie ciągu obj spowoduje wykluczenie wszystkich plików pod katalogiem obj lub wszystkich plików z rozszerzeniem .obj . |
/ y | Pomija monit o potwierdzenie, że chcesz zastąpić istniejący plik docelowy. |
/ y | Monituje o potwierdzenie, że chcesz zastąpić istniejący plik docelowy. |
/z | Kopie za pośrednictwem sieci w trybie ponownego uruchamiania. |
/b | Kopiuje link symboliczny zamiast plików. Ten parametr został wprowadzony w systemie Windows Vista®. |
/j | Kopiuje pliki bez buforowania. Zalecane w przypadku bardzo dużych plików. Ten parametr został dodany w systemie Windows Server 2008 R2. |
/kompresować | Żądaj kompresji sieci podczas transferu plików, jeśli ma to zastosowanie. |
/[- ]rozrzedłe |
Włącza lub wyłącza zachowywanie stanu rozrzednia plików podczas procesu kopiowania. Jeśli określono oba parametry, /-rozrzedlić zastąpi /rozrzedlić. |
/noclone | Nie próbuje blokować klonowania jako optymalizacji. |
/? | Wyświetla pomoc w wierszu polecenia. |
Uwagi
Korzystanie z /z
Jeśli utracisz połączenie w fazie kopiowania (na przykład jeśli serwer przechodzi w tryb offline, połączenie zostanie wznowione po ponownym opublikowaniu połączenia. /z wyświetla również procent ukończonej operacji kopiowania dla każdego pliku.
Za pomocą /y w zmiennej środowiskowej COPYCMD.
Można użyć /y w zmiennej środowiskowej COPYCMD. To polecenie można zastąpić za pomocą polecenia /-y w wierszu polecenia. Domyślnie zostanie wyświetlony monit o zastąpienie.
Kopiowanie zaszyfrowanych plików
Kopiowanie zaszyfrowanych plików do woluminu, który nie obsługuje systemu szyfrowania plików, powoduje wystąpienie błędu. Odszyfruj pliki jako pierwsze lub skopiuj pliki do woluminu, który obsługuje system szyfrowania plików.
Dołączanie plików
Aby dołączyć pliki, określ pojedynczy plik dla miejsca docelowego, ale wiele plików dla źródła (czyli przy użyciu symboli wieloznacznych lub pliku1+plik2+plik3 format).
Wartość domyślna miejsca docelowego
Jeśli pominięto miejsce docelowe,
xcopy
polecenie kopiuje pliki do bieżącego katalogu.Określanie, czy lokalizacja docelowa jest plikiem, czy katalogiem
Jeśli miejsce docelowe nie zawiera istniejącego katalogu i nie kończy się ukośnikiem odwrotnym (), zostanie wyświetlony następujący komunikat:
Does <Destination> specify a file name or directory name on the target(F = file, D = directory)?
Naciśnij F, jeśli chcesz skopiować plik lub pliki do pliku. Naciśnij D, jeśli chcesz skopiować plik lub pliki do katalogu.
Ten komunikat można pominąć przy użyciu / i opcji wiersza polecenia, co powoduje
xcopy
założenie, że miejsce docelowe jest katalogiem, jeśli źródło jest więcej niż jeden plik lub katalog.Używanie polecenia do ustawiania atrybutu
xcopy
archiwum dla plików docelowychPolecenie
xcopy
tworzy pliki z zestawem atrybutów archiwum, niezależnie od tego, czy ten atrybut został ustawiony w pliku źródłowym. Aby uzyskać więcej informacji na temat atrybutów plików i attrib, zobacz Powiązane linki.Porównywanie
xcopy
idiskcopy
Jeśli masz dysk zawierający pliki w podkatalogach i chcesz skopiować go na dysk, który ma inny format, użyj
xcopy
polecenia zamiastdiskcopy
.diskcopy
Ponieważ polecenie kopiuje dyski śledzone według śledzenia, dyski źródłowe i docelowe muszą mieć ten sam format. Poleceniexcopy
nie ma tego wymagania. Użyjxcopy
, chyba że potrzebujesz pełnej kopii obrazu dysku.Błąd niewystarczającej pamięci
Może wystąpić błąd "niewystarczająca ilość pamięci" w przypadku uruchomienia
xcopy
polecenia w celu skopiowania pliku lub folderu, którego ścieżka nazwy pliku jest większa niż 255 znaków.Kody zakończenia dla
xcopy
Aby przetworzyć kody zakończenia zwrócone przez
xcopy
program , użyj parametru ErrorLevel w wierszu polecenia if w programie wsadowym. Aby zapoznać się z przykładem programu wsadowego, który przetwarza kody zakończenia przy użyciu polecenia if, zobacz Powiązane linki. W poniższej tabeli wymieniono każdy kod zakończenia i opis.Kod zakończenia Opis 0 Pliki zostały skopiowane bez błędu. 1 Nie znaleziono żadnych plików do skopiowania. 2 Użytkownik nacisnął CTRL+C, aby zakończyć działanie xcopy
.4 Wystąpił błąd inicjowania. Za mało pamięci lub miejsca na dysku albo wprowadzono nieprawidłową nazwę dysku lub nieprawidłową składnię w wierszu polecenia. 5 Wystąpił błąd zapisu dysku.
Przykłady
1. Aby skopiować wszystkie pliki i podkatalogi (w tym wszystkie puste podkatalogi) z dysku A do dysku B, wpisz:
xcopy a: b: /s /e
2. Aby uwzględnić dowolny system lub ukryte pliki w poprzednim przykładzie, dodaj / h opcji wiersza polecenia w następujący sposób:
xcopy a: b: /s /e /h
3. Aby zaktualizować pliki w katalogu \Reports przy użyciu plików w katalogu \Rawdata, które uległy zmianie od 29 grudnia 1993 r., wpisz:
xcopy \rawdata \reports /d:12-29-1993
4. Aby zaktualizować wszystkie pliki, które istnieją w \Reports w poprzednim przykładzie, niezależnie od daty, wpisz:
xcopy \rawdata \reports /u
5. Aby uzyskać listę plików do skopiowania przez poprzednie polecenie (czyli bez faktycznego kopiowania plików), wpisz:
xcopy \rawdata \reports /d:12-29-1993 /l > xcopy.out
Plik xcopy.out zawiera listę każdego pliku, który ma zostać skopiowany.
6. Aby skopiować katalog \Customer i wszystkie podkatalogi do katalogu \\Public\Address na dysku sieciowym H:, zachować atrybut tylko do odczytu i wyświetlić monit o utworzenie nowego pliku w H:, wpisz:
xcopy \customer h:\public\address /s /e /k /p
7. Aby wydać poprzednie polecenie, upewnij się, że xcopy
tworzy katalog \Address, jeśli nie istnieje, i pomiń komunikat wyświetlany podczas tworzenia nowego katalogu, dodaj / i opcji wiersza polecenia w następujący sposób:
xcopy \customer h:\public\address /s /e /k /p /i
8. Możesz utworzyć program wsadowy do wykonywania xcopy
operacji i używać partii , jeśli polecenie przetwarza kod zakończenia, jeśli wystąpi błąd. Na przykład następujący program wsadowy używa parametrów możliwych do zastąpienia dla parametrów źródłowych xcopy
i docelowych:
@echo off
rem COPYIT.BAT transfers all files in all subdirectories of
rem the source drive or directory (%1) to the destination
rem drive or directory (%2)
xcopy %1 %2 /s /e
if errorlevel 4 goto lowmemory
if errorlevel 2 goto abort
if errorlevel 0 goto exit
:lowmemory
echo Insufficient memory to copy files or
echo invalid drive or command-line syntax.
goto exit
:abort
echo You pressed CTRL+C to end the copy operation.
goto exit
:exit
Aby użyć poprzedniego programu wsadowego do skopiowania wszystkich plików w katalogu C:\Prgmcode i jego podkatalogów do dysku B, wpisz:
copyit c:\prgmcode b:
Interpreter poleceń zastępuje kod C:\Prgmcode dla %1 i B: dla %2, a następnie używa z xcopy
/e i /s opcji wiersza polecenia. Jeśli xcopy
wystąpi błąd, program wsadowy odczytuje kod zakończenia i przechodzi do etykiety wskazanej w odpowiedniej instrukcji IF ERRORLEVEL , a następnie wyświetla odpowiedni komunikat i kończy działanie z programu wsadowego.
9. Ten przykład kopiuje wszystkie niepuste katalogi oraz pliki ze skojarzonym rozszerzeniem pliku po symbolu gwiazdki.
xcopy .\toc*.yml ..\..\Copy-To\ /S /Y
rem Output example.
rem .\d1\toc.yml
rem .\d1\d12\toc.yml
rem .\d2\toc.yml
rem 3 File(s) copied
W poprzednim przykładzie ta określona wartość parametru źródłowego .\toc*.yml kopiuje te same 3 pliki, nawet jeśli jego dwa znaki ścieżki .\ zostały usunięte. Jednak żadne pliki nie zostaną skopiowane, jeśli symbol wieloznaczny gwiazdki został usunięty z parametru źródłowego, co spowoduje, że tylko .\toc.yml.