Příkaz XCOPY zkopíruje soubory s rozšířenou službou. Příkaz XCOPY - kopírování souborů a adresářů

Na rozdíl od utility COPY umožňuje příkaz XCOPY také kopírovat soubor přes příkazový řádek, ale má více funkcí. Stojí však za zmínku, že XCOPY umožňuje pracovat pouze se soubory a adresáři, nikoli však se zařízeními (například tiskárnou). Ale jako vždy nejprve trochu textu...

Za starých časů jsem měl disk s operačním systémem Windows XP Sp1, tehdy ještě nebyly instalační disky s automatickým spouštěním, takže jsem musel nejprve zadat příkazový shell a teprve poté spustit instalační soubor na disku . Disk už byl dost ošuntělý, byly vidět malé dírky, ale kupodivu se mi s pomocí starého dobrého Wolves Commander podařilo zkopírovat všechny soubory přes příkazový řádek, i když ne na první pokus. Navíc občas došlo k tomu, že se systém zhroutil a musel jsem ručně kopírovat z jednoho šroubu do druhého, trvalo to den...

příkazový řádek xcopy

zdroj XCOPY [výsledek] ] ]

[+ soubor 3]...]

Zdroj– zadejte cestu k souborům, které se mají zkopírovat.

Výsledek– pomocí příkazového řádku zadejte umístění, kam chcete soubor zkopírovat. Pokud tento parametr chybí, budou dokumenty duplikovány v aktuálním adresáři.

/PROTI– stejně jako v předchozí verzi je tento parametr zodpovědný za kontrolu fyzického stavu dokumentů, ale již není povinný, protože ověření provádí systém sám. Bylo ponecháno pouze kvůli kompatibilitě s předchozími verzemi MS-DOS.

/EXCLUDE:file1[+file2][+file3]… – umožňuje vyloučit několik souborů nebo složek z procesu kopírování. Vše je zde jednoduché, stačí uvést názvy objektů, které by měly být vyloučeny, ale nelze použít speciální znaky jako „*“ a „?“. Klíče soubor1, soubor2, ... ukazují na dokumenty, ve kterých jsou zapsány řádky, každý řádek musí být na samostatném řádku. Pokud alespoň jeden z řádků odpovídá jakékoli části absolutní cesty zkopírovaného dokumentu, nebude možné tento soubor zkopírovat pomocí příkazového řádku. Řekněme, že v adresáři D:DATA jsou tři dokumenty s příponou txt: data1.txt, data2.txt a data3.txt. Otevřete CMD a napište do něj následující příkazy:

echo data1.txt>exclude.txt

echo data2.txt>>exclude.txt

V tomto příkladu jsme v aktuálním adresáři vytvořili textový dokument exlude.txt, který obsahuje dva řádky data1.txt a data2.txt. Symbol ">>" se od symbolu ">" liší pouze tím, že připojuje data na konec dokumentu, místo aby přepisoval celý obsah novými informacemi. Dobře, nyní se pokusíme provést následující direktivy:

XCOPY *.txt D:DATA /EXCLUDE: exclude.txt – v tomto příkladu jsme z aktuální složky do složky D:DATA zkopírovali všechny dokumenty s příponou txt kromě souborů data1 a data2.

Jiný příklad, pokud zadáte řetězce ve tvaru OBJ nebo .OBJ, budou z procesu vyloučeny všechny objekty ze složky OBJ a všechny objekty s příponou .OBJ.

/Z– umožňuje duplikovat síťové dokumenty s obnovou.

Jak víte, systém souborů zpravidla každému souboru/dokumentu přiřadí vlastníka, je to uživatel, který dokument vytvořil. Při použití příkazů a XCOPY z příkazové řádky se informace o starém vlastníkovi přepíší a vlastníkem kopie se stane uživatel, pod jehož účtem byly soubory skutečně zkopírovány z příkazové řádky.

/A A /M– nastavení režimu pro archivní dokumenty. První klíč po duplikování objektu ponechá atribut „Archive“, zatímco druhý klíč tento atribut po dokončení manipulačního procesu deaktivuje.

– tento parametr umožňuje kopírovat pouze ta data, která nebyla změněna dříve než zadané datum (datum y je uvedeno v atributu /D[:datum]; není-li uvedeno samotné datum, pak se kopírování provede pouze v případě, že zdroj je novější než výsledek). Například:

XCOPY "C:Můj dokument*.*" "D:REZERVOVAT Můj dokument" /D

Zde budou přes příkazový řádek zkopírovány pouze soubory, které byly změněny od poslední takové manipulace nebo které nebyly v dokumentu D: RESERVEMy.

/S– tato klávesa označuje, že kromě dokumentů je třeba zkopírovat i složku, pokud není prázdná.

/E– tato klávesa je podobná předchozí, jen s tím rozdílem, že umožňuje zkopírovat prázdnou složku přes příkazový řádek.

/W– zapne se režim požadavku na stisknutí libovolné klávesy před zahájením duplikace.

/C– proces kopírování bude pokračovat, i když dojde k chybě

/I– Tento přepínač určuje, že cílem musí být adresář. Například pokud nastavíte klíč /I v příkazu pro zkopírování všech objektů s příponou txt z aktuálního adresáře do neexistujícího podadresáře TEXT:

XCOPY *.txt TEXT /I

pak bude podadresář TEXT vytvořen bez dalších požadavků.

/Q– tato klávesa během procesu nezobrazí jména

/F– tato klávesa zobrazí celý zdroj a cestu výsledků během procesu

/L– tato klávesa zobrazí pouze ty dokumenty, které je třeba zkopírovat, ale samotný proces neproběhne.

/H– umožňuje duplikovat skryté a systémové dokumenty.

/K- nahradit objekty atributem „Pouze pro čtení“.

/T– vytvoří snímek struktury zkopírovaných složek, ale nezkopíruje samotné dokumenty a prázdné adresáře také nejsou zahrnuty. Chcete-li stále zahrnout prázdné adresáře a podadresáře, musíte použít kombinaci kláves /T /E.

/U– aktualizuje obsah adresáře, to znamená zkopíruje pouze ty soubory, které již v adresáři jsou.

/Y A /-Y určit, zda musí být před nahrazením požadováno potvrzení. /Y znamená, že taková žádost je potřebná, /-Y- není potřeba.

/N– kopírování pomocí příkazového řádku pomocí generovaných krátkých názvů.

Jak již bylo zmíněno výše, při použití utilit COPY a XCOPY se informace o předchozím vlastníkovi přepisují. Chcete-li tomu zabránit, můžete použít příkaz SCOPY z balíčku Resource Kit, který má následující syntaxi:

SCOPY zdroj [výsledek]

/O– umožňuje duplikovat informace o majiteli

/A– duplikace informací souvisejících s auditováním přístupu k souboru nebo adresáři

/S– kopírování souborů přes příkazový řádek ze všech podadresářů zadaného adresáře.

Zápis do streamů NTFS

A také bych rád připomněl takový koncept jako „kopírování do streamů“. Částečně jsem se této problematiky dotkl v článku s příklady při popisu metody FileSystemObject. Tato funkce je dostupná pouze v systému souborů NTFS. V jednoduché verzi je podstata věci toto: ke každému dokumentu nebo disku můžete připojit svůj vlastní stream a zapisovat informace přímo do streamu, to znamená, že informace budou zaznamenány, ale samotný dokument nezmění své velikost. Udělejme jednoduchý experiment, napište na příkazový řádek:

echo „Ahoj, slovo“>novy.txt:potok.txt – v tomto příkladu jsme vytvořili textový dokument new.txt a zkopírovali frázi Ahoj, slovo do potoka potok.txt. Pokud spustíme příkaz notepad new.txt, nic neuvidíme, ale pokud jej spustíme takto:

poznámkový blok nový.txt.potok.txt– pak uvidíme oblíbenou frázi Ahoj, slovo.

Příkaz xcopy příkazového řádku.

Když je soubor smazán, smaže se také stream, který je k němu přidružen. Existuje jeden poměrně primitivní způsob, jak zjistit, že je v našem domněle prázdném dokumentu něco napevno zapojené, a to umístěním do archivu, v důsledku čehož se při archivaci zvětší nulová velikost dokumentu.

Úplný seznam příkazů lze zobrazit zadáním HELP na příkazovém řádku.

CD tým

Aktuální adresář lze změnit pomocí příkazu

CD [jednotka:][cesta\]

Cesta k požadovanému adresáři je specifikována s ohledem na výše uvedené komentáře. Například příkaz CD\ se přesune do kořenového adresáře aktuální jednotky. Pokud spustíte příkaz CD bez parametrů, zobrazí se názvy aktuální jednotky a adresáře.

příkaz COPY

Jedním z nejčastěji se opakujících úkolů při práci na počítači je kopírování a přesouvání souborů z jednoho místa na druhé. Chcete-li zkopírovat jeden nebo více souborů, použijte příkaz COPY.

Syntaxe tohoto příkazu je:

KOPÍROVAT zdroj [+ zdroj [+ ...]] [výsledek]

Stručný popis parametrů a kláves příkazu COPY je uveden v tabulce.

Tabulka 1.1. Možnosti a možnosti příkazu COPY

Parametr

Popis

zdroj

Název souboru nebo souborů, které se kopírují

Soubor je textový soubor ASCII, to znamená, že konec souboru je označen znakem ASCII 26 ( +)

Soubor je binární. Tento přepínač určuje, že interpret příkazů by měl při kopírování načíst ze zdroje počet bajtů určený velikostí v adresáři kopírovaného souboru.

výsledek

Adresář pro umístění výsledku kopírování a/nebo názvu vytvářeného souboru

Ověření správnosti kopie porovnáním souborů po zkopírování

Zakázání požadavku na potvrzení nahrazení souborů

Povolení požadavku na potvrzení nahrazení souborů

Zde jsou příklady použití příkazu COPY.

Zkopírování souboru abc.txt z aktuálního adresáře do adresáře D:\PROGRAM pod stejným názvem:

ZKOPÍROVAT abc.txt D:\PROGRAM

Zkopírování souboru abc.txt z aktuálního adresáře do adresáře D:\PROGRAM pod novým názvem def.txt:

ZKOPÍROVAT abc.txt D:\PROGRAM\def.txt

Zkopírování všech souborů s příponou txt z jednotky A: do adresáře „My Documents“ na jednotce C:

ZKOPÍROVAT A:\*.txt "C:\Moje dokumenty"

Pokud v příkazu neurčíte cílový soubor, příkaz COPY vytvoří kopii zdrojového souboru se stejným názvem, datem a časem vytvoření jako zdrojový soubor a umístí novou kopii do aktuálního adresáře na aktuálním řídit. Chcete-li například zkopírovat všechny soubory z kořenového adresáře jednotky A: do aktuálního adresáře, stačí spustit následující krátký příkaz:

KOPÍROVAT A:\*.*

Při kopírování můžete jako zdroj nebo výsledek zadat názvy nejen souborů, ale i počítačových zařízení. Chcete-li například vytisknout soubor abc.txt na tiskárně, můžete použít příkaz ke zkopírování tohoto souboru do zařízení PRN: COPY abc.txt PRN

Další zajímavý příklad: pojďme vytvořit nový textový soubor a zapsat do něj informace bez použití textového editoru. K tomu stačí zadat příkaz COPY CON my.txt, který zkopíruje to, co píšete na klávesnici, do souboru my.txt (pokud tento soubor existoval, bude přepsán, jinak se vytvoří). Pro dokončení zadávání musíte zadat symbol konce souboru, tj. stisknout tlačítka +.

Příkaz COPY může také sloučit (slepit) více souborů do jednoho. Chcete-li to provést, musíte určit jeden výsledný soubor a několik zdrojových. Toho je dosaženo použitím zástupných znaků (? a *) nebo formátu file1 + file2 + file3. Chcete-li například sloučit soubory 1.txt a 2.txt do souboru 3.txt, můžete zadat následující příkaz:

ZKOPÍROVAT 1.txt+2.txt 3.txt

Sloučení všech souborů s příponou dat z aktuálního adresáře do jednoho souboru all.dat lze provést takto:

COPY /B *.dat all.dat

Přepínač /B se zde používá k zabránění zkrácení spojovaných souborů, protože při kombinování souborů příkaz COPY ve výchozím nastavení považuje textové soubory.

Pokud je název cílového souboru stejný jako název jednoho z kopírovaných souborů (kromě prvního), původní obsah cílového souboru bude ztracen. Pokud je název cílového souboru vynechán, použije se jako jeho název první soubor v seznamu. Například příkaz COPY 1.txt+2.txt připojí obsah souboru 1.txt k obsahu souboru 2.txt. Příkaz COPY lze také použít k přiřazení aktuálního data a času souboru bez úpravy jeho obsahu. Chcete-li to provést, musíte zadat příkaz jako

COPY /B 1.txt +,

Zde čárky označují vynechání parametru přijímače, což vede k požadovanému výsledku.

Příkaz COPY má také své nevýhody. Nelze jej například použít ke kopírování skrytých a systémových souborů, souborů s nulovou délkou nebo souborů z podadresářů. Pokud navíc při kopírování skupiny souborů COPY narazí na soubor, který aktuálně nelze zkopírovat (například je obsazen jinou aplikací), proces kopírování bude zcela přerušen a zbývající soubory nebudou zkopírovány.

příkaz XCOPY

Problémy uvedené v popisu příkazu COPY lze vyřešit pomocí příkazu XCOPY, který poskytuje mnohem více možností při kopírování. Je však třeba poznamenat, že XCOPY umí pracovat pouze se soubory a adresáři, ale ne se zařízeními.

Syntaxe tohoto příkazu je:

Zdroj XCOPY [výsledek] [klávesy]

Příkaz XCOPY má mnoho možností, my se dotkneme jen některých z nich. Klávesa /D[:[datum]] umožňuje kopírovat pouze soubory upravené k určenému datu nebo později. Pokud parametr datum není zadán, bude kopírování provedeno pouze v případě, že je zdroj novější než výsledek. Například příkaz

XCOPY "C:\My Documents\*.*" "D:\BACKUP\My Documents" /D

zkopíruje do adresáře "D:\BACKUP\My Documents" pouze ty soubory z adresáře "C:\My Documents", které byly změněny od posledního kopírování nebo které nebyly v "D:\BACKUP\My Documents" vůbec.

Přepínač /S umožňuje zkopírovat všechny neprázdné podadresáře ve zdrojovém adresáři. Pomocí přepínače /E můžete zkopírovat všechny podadresáře, včetně prázdných.

Pokud je zadán přepínač /C, kopírování bude pokračovat, i když dojde k chybám. To může být velmi užitečné pro operace kopírování prováděné na skupinách souborů, například při zálohování dat.

Přepínač /I je důležitý, když se zkopíruje více souborů a cílový soubor chybí. Když je zadán tento přepínač, příkaz XCOPY předpokládá, že cílový soubor musí být adresář. Pokud například zadáte v příkazu přepínač /I pro zkopírování všech souborů s příponou txt z aktuálního adresáře do podadresáře TEXT, který ještě neexistuje,

XCOPY *.txt TEXT /I

pak bude podadresář TEXT vytvořen bez dalších požadavků.

Klávesy /Q, /F a /L jsou zodpovědné za režim zobrazení při kopírování. Když zadáte klíč /Q, názvy souborů se při kopírování nezobrazí a klíč /F - zobrazí se úplné cesty ke zdroji a výsledku. Přepínač /L znamená, že se zobrazí pouze soubory, které je třeba zkopírovat (samotné kopírování se neprovádí).

Pomocí přepínače /H můžete zkopírovat skryté a systémové soubory a pomocí přepínače /R nahradit soubory atributem Pouze pro čtení. Chcete-li například zkopírovat všechny soubory z kořenového adresáře disku C: (včetně systémových a skrytých) do adresáře SYS na disku D:, musíte zadat následující příkaz:

XCOPY C:\*.* D:\SYS /H

Přepínač /T umožňuje XCOPY kopírovat pouze zdrojovou adresářovou strukturu bez duplikace souborů v těchto adresářích a prázdné adresáře a podadresáře nejsou zahrnuty. Chcete-li stále zahrnout prázdné adresáře a podadresáře, musíte použít kombinaci kláves /T /E.

Pomocí XCOPY můžete při kopírování aktualizovat pouze existující soubory (nové soubory se nezapisují). Chcete-li to provést, použijte přepínač /U. Pokud například adresář C:\2 obsahoval soubory a.txt a b.txt a adresář C:\1 obsahoval soubory a.txt, b.txt, c.txt a d.txt, pak po provedení příkaz

XCOPY C:\1 C:\2 /U

v adresáři C:\2 budou nadále pouze dva soubory a.txt a b.txt, jejichž obsah bude nahrazen obsahem odpovídajících souborů z adresáře C:\1 Pokud soubor s příponou Číst -Pouze atribut byl zkopírován pomocí XCOPY, poté bude standardně tento atribut z kopírovaného souboru odstraněn. Abyste zkopírovali nejen data, ale i celé atributy souboru, musíte použít klíč /K.

Přepínače /Y a /-Y určují, zda má být před nahrazením souborů při kopírování požadováno potvrzení. /Y znamená, že takový požadavek je potřeba, /-Y znamená, že není potřeba.

Tým DIR

Dalším velmi užitečným příkazem je DIR [jednotka:][cesta][název souboru] [klávesy], který slouží k zobrazení informací o obsahu jednotek a adresářů. Parametr [jednotka:][cesta] určuje jednotku a adresář, jehož obsah se má zobrazit. Parametr [název_souboru] určuje soubor nebo skupinu souborů, které mají být zahrnuty do seznamu. Například příkaz

DIR C:\*.bat

zobrazí všechny soubory s příponou bat v kořenovém adresáři disku C:. Zadáte-li tento příkaz bez parametrů, zobrazí se označení disku a sériové číslo, názvy (v krátké i dlouhé verzi) souborů a podadresářů umístěných v aktuálním adresáři a také datum a čas jejich poslední úpravy. Poté zobrazí počet souborů v adresáři, celkovou velikost (v bajtech) obsazenou soubory a množství volného místa na disku. Například:

Svazek v zařízení C je označen PHYS1_PART2 Sériové číslo svazku: 366D-6107 Obsah složky C:\aditor.<ПАПКА> 25.01.00 17:15 . .. <ПАПКА>01/25/00 17:15 .. TEMPLT02 DAT 227 08/07/98 1:00 templt02.dat UNINST1 000 1 093 03/02/99 8:36 UNINST1,000 HILITE2 DAT 1 088 55 hilite.dat LT01 DAT 48 07.08 ,98 1:00 templt01.dat UNINST0 000 40 960 04/15/98 2:08 UNINST0,000 TTABLE DAT 357 08/07/98 08/07/98 tabulka 1:007 1.EXEDAT /01/99 23:13 aditor.exe README TXT 3 9 74 01/25/00 17:26 readme.txt ADITOR HLP 24 594 10/08/98 23:12 aditor.hlp TEXT~1 TXT 0 03/11 01 9:02 Textový soubor.txt 11 souborů 533 647 bajtů 2 složky 143 261 696 bajtů zdarma

Pomocí přepínačů příkazu DIR můžete určit různé režimy rozvržení, filtrování a řazení. Například při použití přepínače /W se seznam souborů zobrazí v širokém formátu s maximálním možným počtem názvů souborů nebo adresářů na každém řádku. Například:

Svazek v zařízení C je označen PHYS1_PART2 Sériové číslo svazku: 366D-6107 Obsah složky C:\aditor [.] [..] TEMPLT02.DAT UNINST1.000 HILITE.DAT TEMPLT01.DAT UNINST0.000 TTABLE.DAT ADITOR.EXE README. TXT ADITOR.HLP TEXT~1.TXT 11 souborů 533 647 bajtů 2 složky 143 257 600 bajtů zdarma

Pomocí klávesy /A[[:]attributes] můžete zobrazit názvy pouze těch adresářů a souborů, které mají zadané atributy (R - “Pouze pro čtení”, A - “Archiv”, S - “Systém”, H - „Skryté“, předpona „–“ má význam NE). Pokud je přepínač /A použit s více než jednou hodnotou atributu, zobrazí se pouze ty názvy souborů, jejichž atributy všechny odpovídají zadaným. Chcete-li například zobrazit názvy všech souborů v kořenovém adresáři disku C:, které jsou skryté i systémové, můžete použít příkaz

DIR C:\ /A:HS

a pro zobrazení všech souborů kromě skrytých - příkaz

DIR C:\/A:-H

Všimněte si, že atribut adresáře odpovídá písmenu D, to znamená, že například pro zobrazení seznamu všech adresářů na disku C: musíte zadat příkaz

DIR C:/A:D

Přepínač /O[[:]sorting] určuje pořadí, ve kterém je obsah adresáře seřazen při výstupu příkazem DIR. Pokud je tento přepínač vynechán, DIR vytiskne názvy souborů a adresářů v pořadí, v jakém jsou obsaženy v adresáři. Pokud je zadán přepínač /O a není zadána možnost řazení, pak DIR zobrazí názvy v abecedním pořadí. V parametru řazení můžete použít následující hodnoty: N - podle názvu (abecedně), S - podle velikosti (začíná nejmenším), E - podle přípony (abecedně), D - podle data (začíná od nejstarší), A - podle data stažení (počínaje nejstaršími), G - spouštění seznamu s adresáři. Předpona „–“ znamená obrácené pořadí. Pokud zadáte více než jednu hodnotu pořadí řazení, soubory se seřadí podle prvního kritéria, poté podle druhého a tak dále.

Přepínač /S znamená zobrazení seznamu souborů z daného adresáře a jeho podadresářů.

Přepínač /B uvádí pouze názvy adresářů a souborů (v dlouhém formátu), jeden na řádek, včetně přípony. V tomto případě jsou zobrazeny pouze základní informace, bez konečných informací. Například:

Templt02.dat UNINST1.000 hilite.dat templt01.dat UNINST0.000 ttable.dat aditor.exe readme.txt aditor.hlp Textový soubor.txt

Příkazy MKDIR a RMDIR

Chcete-li vytvořit nový adresář a odstranit existující prázdný adresář, použijte příkazy MKDIR [jednotka:]cesta a RMDIR [jednotka:]cesta [klávesy] (nebo jejich krátké ekvivalenty MD a RD). Například:

MKDIR "C:\Příklady" RMDIR "C:\Příklady"

Příkaz MKDIR nelze provést, pokud adresář nebo soubor s daným názvem již existuje. Příkaz RMDIR selže, pokud odstraňovaný adresář není prázdný.

příkaz DEL

Pomocí příkazu můžete odstranit jeden nebo více souborů

DEL [jednotka:][cesta]název souboru [klíče]

Používají se zástupné znaky k odstranění více souborů najednou? A *. Klávesa /S umožňuje mazat zadané soubory ze všech podadresářů, klávesa /F umožňuje násilně mazat soubory pouze pro čtení, klávesa /A[[:]attributes] umožňuje vybírat soubory k odstranění podle atributů (podobně jako /A[[:]klíč atributů ] v příkazu DIR).

Tým REN

Soubory a adresáře můžete přejmenovat pomocí příkazu RENAME (REN). Syntaxe tohoto příkazu je následující:

REN [jednotka:][cesta][adresář1|soubor1] [adresář2|soubor2]

Zde adresář1|soubor1 určuje název adresáře/souboru, který se má změnit, a adresář2|soubor2 určuje nový název adresáře/souboru. Lze zástupné znaky použít v libovolném parametru příkazu REN? A *. V tomto případě budou symboly reprezentované šablonami v parametru soubor2 shodné s odpovídajícími symboly v parametru soubor1. Chcete-li například změnit příponu na doc pro všechny soubory s příponou txt v aktuálním adresáři, musíte zadat následující příkaz:

REN *.txt *.doc

Pokud soubor s názvem soubor2 již existuje, příkaz REN se zastaví a zobrazí zprávu, že soubor již existuje nebo se používá. Příkaz REN navíc nemůže určit jinou jednotku nebo adresář pro vytvoření výsledného adresáře a souboru. K tomuto účelu je třeba použít příkaz MOVE, určený k přejmenování a přesunutí souborů a adresářů.

příkaz MOVE

Syntaxe příkazu pro přesun jednoho nebo více souborů je:

MOVE [jednotka:][cesta]název_souboru1[,...] výsledný_soubor

Syntaxe příkazu pro přejmenování složky je:

MOVE [jednotka:][cesta]adresář1 adresář2

Zde parametr result_file určuje nové umístění souboru a může obsahovat název jednotky, dvojtečku, název adresáře nebo jejich kombinaci. Pokud se přesouvá pouze jeden soubor, můžete zadat nový název souboru. To vám umožní okamžitě přesunout a přejmenovat soubor. Například,

PŘESUNOUT "C:\My Documents\list.txt" D:\list.txt

Pokud je zadán přepínač /-Y, bude při vytváření adresářů a nahrazování souborů vydán požadavek na potvrzení. Přepínač /Y zruší vydávání takového požadavku.

Tým XCOPY slouží ke kopírování souborů a adresářů při zachování jejich struktury. V porovnání s týmem KOPIE má více možností a je nejflexibilnějším kopírovacím nástrojem v příkazovém řádku Windows

Formát příkazového řádku:

Zdroj XCOPY [cíl] ] ] [+soubor3]...]

Možnosti příkazového řádku:

zdroj- Zkopírované soubory.

cílový_objekt- Umístění nebo názvy nových souborů.

/A- Kopírování pouze souborů se sadou atributů archivu; samotný atribut se nemění.

/M- Kopírování pouze souborů se sadou atributů archivu; po zkopírování je atribut odstraněn.

/D:m-d-y- Kopírování souborů upravených ne dříve než zadané datum. Pokud není zadáno žádné datum, budou nahrazeny pouze cílové soubory, které jsou starší než zdrojové soubory.

/EXCLUDE:file1[+file2][+file3]...- Seznam souborů obsahujících řádky s kritérii pro vyloučení souborů a složek z procesu kopírování. Každý řádek musí být v souboru na samostatném řádku. Pokud některý z řetězců odpovídá jakékoli části absolutní cesty ke kopírovanému souboru, bude tento soubor z operace kopírování vyloučen. Například zadáním řetězce \obj\ nebo .obj můžete vyloučit všechny soubory ve složce obj nebo všechny soubory s příponou OBJ.

/P- Výstupní výzvy před vytvořením každého nového souboru.

/S- Kopírujte pouze neprázdné adresáře s podadresáři.

/E- Kopírování adresářů s podadresáři, včetně prázdných. Ekvivalentní kombinaci přepínačů /S /E. Kompatibilní s přepínačem /T.

/PROTI- Kontrola velikosti každého nového souboru.

/W- Před kopírováním vás vyzve ke stisknutí tlačítka.

/C- Pokračujte v kopírování bez ohledu na chyby.

/I- Pokud cíl neexistuje a je zkopírováno více souborů, předpokládá se, že cíl určuje adresář.

/Q- Zákaz zobrazování jmen zkopírovaných souborů.

/F- Výstup plných názvů zdrojových a cílových souborů.

/L- Zobrazuje názvy zkopírovaných souborů.

/G- Kopírování zašifrovaných souborů do cílového adresáře, který nepodporuje šifrování.

/H- Kopírování, mimo jiné, skrytých a systémových souborů.

/R- Přepisování souborů pouze pro čtení.

/T- Vytvořte strukturu adresářů bez kopírování souborů. Prázdné adresáře a podadresáře nejsou zahrnuty do procesu kopírování. Chcete-li vytvořit prázdné adresáře a podadresáře, použijte kombinaci přepínače /T /E.

/U- Kopírovat pouze soubory, které se již nacházejí v cílovém adresáři.

/K- Kopírování atributů. Použití příkazu XCOPY obvykle resetuje atributy pouze pro čtení.

/N- Použití krátkých jmen při kopírování.

- Zkopírujte informace o vlastníkovi a data ACL.

/X- Kopírování parametrů auditu souboru (předpokládá klíč /O).

/Y- Chcete-li přepsat existující cílový soubor, potlačte výzvu k potvrzení.

/-Y- Dotázat se na potvrzení přepsání existujícího cílového souboru.

/Z- Zkopírujte síťové soubory se životopisem.

/J- Kopírování pomocí I/O bez vyrovnávací paměti. Doporučeno pro velmi velké soubory.

Klíč /Y lze nastavit pomocí proměnné prostředí COPYCMD.

Klíč /-Y příkazový řádek toto nastavení přepíše.

Příklady použití XCOPY

XCOPY /?- poskytnout stručné informace o použití příkazu.

xcopy C:\users D:\copy1- zkopírujte soubory z adresáře C:\users do adresáře D:\copy1. Kopírování bude provedeno bez podadresářů a pouze souborů bez atributů „Hidden“ a „System“. Zkopírované soubory budou mít nastaven atribut na archivní. Pokud adresář, do kterého se kopíruje, neexistuje, bude uživatel vyzván s následující zprávou:

Co znamená D:\copy1:
název souboru nebo adresáře
(F = soubor, D = adresář)? D

Po odpovědi D bude vytvořen cílový adresář a zkopírování bude provedeno do D:\COPY1\. Chcete-li potlačit požadavek na vytvoření cílového adresáře, použijte volbu /I:

xcopy C:\users D:\copy1 /I

xcopy C:\users D:\copy1 /H /Y /C- kopírování souborů včetně skrytých a systémových, potlačení požadavku na přepsání existujících a obnovení v případě chyby. Pokud má soubor existující v cílovém adresáři atribut Pouze pro čtení, kopírování se neprovede. K přepsání takových souborů použijte klíč /R

xcopy C:\users D:\copy1 /H /Y /C /R /S- zkopírujte všechny soubory a podadresáře (/S), které přepisují existující bez vyzvání (/Y), včetně skrytých a systémových. (/H) přepíše soubory s atributem Read-Only (/R) a ignoruje chyby (/C)

xcopy C:\users D:\copy1 /H /Y /C /R /S /EXCLUDE:C:\users\listnotcopy.txt- totéž jako v předchozím případě, ale textový soubor C:\users\listnotcopy.txt specifikuje kritéria vyloučení z postupu kopírování. Příklad obsahu souboru:

\Uživatel1\- vyloučit z kopírování adresář C:\uživatelé\uživatel1
Všichni uživatelé vyloučit z kopírování adresář C:\users\All Users
de*.*- vyloučit z kopírování všechny soubory a adresáře začínající kombinací písmen "de"

xcopy C:\users\*.exe D:\copy1 /H /Y /C /R /S /EXCLUDE:C:\users\listnotcopy.txt- stejné jako v předchozím příkladu, ale provede se pouze kopírování spustitelných souborů s příponou .exe.

xcopy %TEMP%\*.ini D:\copy1\ini /H /Y /C /R /S /I- kopírování všech souborů s příponou .ini z adresáře dočasných souborů do adresáře D:\copy1\ini\. Pokud cílový podadresář \ini\ neexistuje, bude vytvořen bez dotazu uživatele (/I) .

xcopy %TEMP%\*.ini D:\copy1\ini /H /Y /C /R /S /I /D:09-16-2013- stejné jako v předchozím příkladu, ale zkopírují se pouze soubory, které mají upravené datum 16. září 2013 nebo starší.

xcopy C:\ D:\copy1\LISTDIR /H /Y /C /R /S /I /E /T- vytvořit strukturu složek jednotky C: v adresáři D:\copy1\LISTDIR. Soubory se nekopírují. Kopírují se pouze složky, včetně prázdných, skrytých a systémových složek.

xcopy C:\ D:\copy1\LISTDIR /H /Y /C /R /S /I /E /T /D:09-16-2013 znovu vytvořte strukturu složek jednotky C: v adresáři D:\copy1\LISTDIR s datem úpravy 16. září 2013 a novějším.

Chcete-li přidat nové soubory do adresářů a aktualizovat stávající na novější verze, můžete použít příkaz REPLACE.

Kopíruje soubory a adresáře včetně podadresářů.

Popis příkazu xcopy, parametry, příklady použití.

Syntax

xcopy zdroj [výsledek] [/w] [/str] [/C] [/proti] [/q] [/F] [/l] [/G] [/d[: mm-dd-yyyy]] [/u] [/i] [/s [/E]] [/t] [/k] [/r] [/h] [{/A|/m}] [/n] []
[/x] [/vyloučit:soubor1[ + [soubor2]][+ [soubor3]] [{/y|/-y}] [/z]

Možnosti

zdroj Požadovaný parametr. Určuje umístění a názvy souborů ke kopírování. Parametr musí specifikovat buď jednotku, nebo cestu.

result Určuje umístění, kam budou soubory zkopírovány. Parametr může obsahovat název jednotky následovaný dvojtečkou, název adresáře, název souboru nebo jejich kombinaci.

/w Zobrazí následující zprávu, která čeká na potvrzení spuštění kopírování: xcopy Stisknutím libovolné klávesy spustíte kopírování souborů /d[: mm-dd-yyyy/p Při vytváření každého výsledného souboru požaduje potvrzení. mm-dd-yyyy/c Ignoruje chyby. xcopy/v Zkontroluje každý zkopírovaný soubor, zda odpovídá originálu. /q Zabrání zobrazení příkazových zpráv na obrazovce. /f Zobrazí názvy zdrojových a výsledných souborů během procesu kopírování./l Zobrazí seznam souborů ke kopírování. /q Zabrání zobrazení příkazových zpráv na obrazovce/g Vytvoří nešifrované výsledné soubory. ] Zkopíruje pouze soubory upravené k určenému datu nebo později. Pokud neuvedete hodnotu, tým zkopíruje všechny soubory - zdrojů výsledek, které jsou novější než stávající soubory - xcopy výsledky výsledek. Tato funkce umožňuje aktualizovat pouze změněné soubory. xcopy/u Zkopíruje (aktualizuje) pouze tyto soubory - xcopy, které již v adresáři existují výsledek výsledek /s. xcopy/i Pokud /E zdroj /s je adresář nebo zdroj obsahuje zástupné znaky a /t neexistuje, příkaz /E. xcopy/k Zkopíruje soubory s atributem jen pro čtení, přičemž tento atribut zachová pro zkopírované soubory, jejichž originály mají tento atribut. Výchozí příkaz xcopy odebere atribut jen pro čtení. /A/r Zkopíruje soubory pouze pro čtení. /A/h Zkopíruje systémové a skryté soubory. Výchozí příkaz /m nekopíruje systémové a skryté soubory. /a Zkopíruje pouze ty soubory, které mají nastaven atribut „archive“. Při použití parametru atribut "archive" zdrojových souborů se nemění. Přečtěte si o nastavení atributů pomocí příkazu attrib. /m Zkopíruje pouze ty soubory, které mají nastaven atribut „archive“. Na rozdíl od parametru). /vyloučit:soubor1[+ [soubor2]][+ [soubor3, parametr

vymaže atribut „archive“ zkopírovaných souborů.

  • Přečtěte si o nastavení atributů pomocí příkazu attrib. /proti

    /n Kopíruje pomocí krátkých názvů systému souborů NTFS. Parametr

  • Přečtěte si o nastavení atributů pomocí příkazu attrib. /n

    vyžadováno při kopírování ze systému souborů NTFS do systému souborů FAT nebo když výsledný disk vyžaduje konvenci pojmenování souborů podobnou systému souborů FAT (8.3). Soubory lze zapisovat do systému souborů FAT nebo NTFS.

  • Přečtěte si o nastavení atributů pomocí příkazu attrib. /o Zkopíruje informace o vlastnictví souboru a DACL (Selective Access Control Table).

    /x Zkopíruje nastavení auditu souborů a informace tabulky řízení přístupu k systému (SACL) (předpokládá /o Zkopíruje informace o vlastnictví souboru a DACL (Selective Access Control Table)./str

  • Přečtěte si o nastavení atributů pomocí příkazu attrib. /y v proměnné prostředí COPYCMD.

    Můžete použít parametr /y v proměnné prostředí COPYCMD. Toto nastavení lze přepsat pomocí parametru /-y na příkazovém řádku. Ve výchozím nastavení, pokud příkaz kopie neprovádí se v dávkovém programu při výměně je vyžadováno potvrzení;

  • Kopírování zašifrovaných souborů

    Pokud zkopírujete soubory na svazek, který nepodporuje systém souborů EFS (Encrypting File System), dojde k chybě. Nejprve byste měli dešifrovat soubory nebo je zkopírovat na svazek s podporou EFS.

  • Přidávání souborů

    Chcete-li kombinovat soubory, zadejte jeden cílový soubor, ale více zdrojových souborů (pomocí zástupných znaků nebo formátu soubor1+soubor2+soubor3).

  • Výchozí hodnota pro ] Zkopíruje pouze soubory upravené k určenému datu nebo později. Pokud neuvedete hodnotu

    Pokud je parametr výsledek není specifikováno xcopy zkopíruje soubory do aktuálního adresáře.

  • Označení jako ] Zkopíruje pouze soubory upravené k určenému datu nebo později. Pokud neuvedete hodnotu soubor nebo adresář

    Pokud je parametr výsledek neobsahuje existující adresář nebo nekončí zpětným lomítkem (\), zobrazí se následující zpráva:

    Co znamená destinace:
    název souboru nebo adresáře
    (F = soubor, D = adresář)?

    Stiskněte F, pokud chcete soubor nebo soubory zkopírovat do souboru. Stiskněte D, pokud chcete soubor nebo soubory zkopírovat do adresáře.

    Chcete-li tuto zprávu vyřešit, použijte možnost /i. V důsledku toho tým xcopy předpokládá, že výsledkem je adresář, pokud je zdrojem více souborů nebo adresářů.

  • Pomocí příkazu xcopy pro nastavení atributu „archive“ pro soubory ] Zkopíruje pouze soubory upravené k určenému datu nebo později. Pokud neuvedete hodnotu

    Tým xcopy vytváří soubory se sadou atributů „archive“ bez ohledu na stav tohoto atributu zdrojových souborů. Další informace o atributech souborů získáte pomocí příkazu attrib.

  • Porovnání příkazů xcopy a diskcopy

    Tým xcopy by měl být použit místo toho diskcopy při kopírování souborů a podadresářů na disk jiného formátu. Od týmu diskcopy kopíruje disky po stopách, je nutné, aby zdrojový disk a výsledný disk měly stejný formát. Pro tým xcopy tento požadavek není nutný. Obvykle byste měli použít příkaz xcopy, pokud nepotřebujete získat dva disky se stejnými obrazy.

  • Kódy ukončení programu xcopy

    Chcete-li analyzovat výstupní kódy příkazu xcopy, použijte parametr error_level na příkazovém řádku -li balíčky programů. Chcete-li vidět příklad dávkového programu, který zpracovává ukončovací kódy pomocí .

Následující tabulka obsahuje seznam výstupních kódů se stručným popisem.

Příklady

Chcete-li zkopírovat všechny soubory a podadresáře (včetně prázdných podadresářů) z jednotky A na jednotku B, zadejte:

Chcete-li zahrnout systémové a skryté soubory do operace kopírování z předchozího příkladu, použijte volbu /h:

xcopy a: b: /s /e /h

Chcete-li aktualizovat soubory v adresáři \Reports soubory v adresáři \alldata, které byly změněny po 29. prosinci 2013, zadejte:

xcopy \alldata \reports /d:29-12-2013

Chcete-li aktualizovat předchozí ukázkové soubory, které již existují v adresáři \Reports, bez ohledu na jejich datum, zadejte následující příkaz:

xcopy\alldata\reports/u

Chcete-li získat seznam souborů, které by byly zkopírovány v předchozím příkladu, zadejte příkaz:

xcopy \alldata \reports /d:29-12-2013 /l > xcopy.out

Seznam souborů, které by byly zkopírovány, je v souboru Xcopy.out.

Chcete-li zkopírovat adresář \Customer a všechny podadresáře \\Public\Address na síťovou jednotku H, při zachování atributu soubory jen pro čtení, zadejte příkaz:

xcopy \customer h:\public\address /s /e /k /p

Chcete-li zadat předchozí příkaz, ujistěte se, že příkaz xcopy vytvoří adresář \Address a pro vyřešení zprávy o vytvoření nového adresáře přidejte parametr /i následovně:

xcopy \customer h:\public\address /s /e /k /p /i

Protože příkaz xcopy umí pracovat s daty vytvoření (úpravy) souboru, lze jej použít například pro kopírování souborů vytvořených (upravených) dnes:

xcopy c:\TEMP D:\vbk\in /D:%date:~3,2%-%date:~0,2%-%date:~8%

Ke spuštění programu xcopy a analýze výstupních kódů můžete vytvořit dávkový soubor a použít příkaz ke zpracování výstupních kódů, když dojde k chybě. xcopy Například následující dávkový program používá k určení zdroje přepsané parametry

a výsledek:

@echo off rem COPYIT.BAT zkopíruje všechny soubory ve všech podadresářích rem zdrojového disku nebo adresáře (%1) na jiný rem disk nebo adresář (%2) xcopy %1 %2 /s /e if errorlevel 4 goto lowmemory if errorlevel 2 goto abort if errorlevel 0 goto exit:lowmemory echo Není dostatek paměti pro kopírování souborů, echo zadaná jednotka je neplatná nebo došlo k chybě syntaxe. goto exit:abort echo Stisknutím CTRL+C zastavíte kopírování. goto exit:exit

Tento dávkový program lze použít ke zkopírování všech souborů adresáře C:\Prgmcode a jeho podadresářů na jednotku B následovně:

zkopírujte c:\prgmcode b:
Kde copyit je název souboru příkazu, jehož text je uveden výše. %1 Interpret příkazů nahradí parametr C:\Prgmcode %2 a B místo parametru xcopy, pak použije příkaz /E s parametry /s A xcopy dojde k chybě, dávkový program načte kód ukončení a skočí na návěští specifikované v odpovídající instrukci IF ERRORLEVEL. V důsledku toho se na obrazovce zobrazí zpráva o povaze chyby a dávkový program se ukončí.

Je třeba poznamenat, že XCOPY je navržen pro práci se soubory a adresáři, ale ne se zařízeními (například tiskárnou).


Nástroj XCopy je jedním z nejstarších a nejužitečnějších nástrojů pro přenos dat. Účelem XCopy je změnit umístění složek. Průzkumník tento nástroj z velké části nahradil a doporučujeme jej používat, kdykoli je to možné. Existuje však několik důležitých použití nástroje XCopy:

  • skripty pro manipulaci se soubory;
  • přesouvání jednotlivých souborů ve složité struktuře;
  • kopírování všech dostupných souborů, i když některé soubory nelze přesunout;
  • archivace dat z jednoho systému do druhého;
  • přesouvání souborů se specifickými atributy.

Mnoho lidí používá XCopy jako svou archivační aplikaci, protože odvádí skvělou práci. Datové soubory můžete snadno zkopírovat ze složky na záložní médium, například na jiný pevný disk, disketu, jednotku Zip nebo síťovou jednotku. Bohužel XCopy nepodporuje tradiční média, jako je magnetická páska. Kromě toho musí být médium, na které kopírujete, rozděleno na oddíly, takže XCopy neumožňuje vypalování souborů na CD.

Jak používat?

Obslužný program XCopy se používá stejným způsobem jako standardní příkaz kopírování – určuje zdrojové a cílové soubory. Chcete-li například zkopírovat všechny soubory ze složky MyDir na jednotce C do stejné složky na jednotce D, zadejte příkaz:

XCopy C:\MyDir\*.* D:\MyDir\*.*

Poté stiskněte klávesu Enter. Nástroj XCopy podporuje sadu klíčů, z nichž nejdůležitější jsou uvedeny níže.

Další klíče

/A a /M- kopírují se pouze archivní soubory. Pomocí těchto klíčů lze nástroj XCopy použít k archivaci. Přepínač /M také obnoví atribut archivace u zkopírovaných souborů, což znamená, že byly zálohovány. Proto při použití XCopy jako archivační aplikace byste měli používat pouze přepínač /M.

/C- pokračuje v kopírování, i když dojde k chybám dat. Tuto funkci použijte ke zkopírování veškerého možného obsahu z poškozené složky do nového umístění. Průzkumník tuto funkci nemá - kopírování se zastaví po první chybě.

/G- umožňuje kopírovat zašifrované soubory do umístění, které nepodporuje šifrování. Tato funkce dešifruje soubor a pro její spuštění musíte mít příslušná systémová práva.

/H- kopíruje skryté a systémové soubory.

/K- kopíruje atributy souborů spolu se samotnými soubory. V normálním režimu obslužný program XCopy odstraní soubory s atributem jen pro čtení.

/O a /X- ochrana zkopírovaných souborů. Klíč /O spolu se souborem zkopíruje informace o jeho vlastníkovi a tabulce řízení přístupu. Tabulka řízení přístupu obsahuje informace o uživatelích, kteří mají přístupová práva k souboru, a akcích, které s ním mohou provádět. Přepínač /X také zkopíruje informace o auditu souboru. Tato funkce je důležitá při sledování přístupu k souborům.

/R- při kopírování přepíše soubory s atributem jen pro čtení. Tento klíč použijte při archivaci, abyste zajistili aktualizaci verzí souborů chráněných proti zápisu v záloze.

/S a /E- kopírovat soubory nejen z aktuální složky, ale také ze všech jejích podsložek. Přepínač /E také zkopíruje prázdné podsložky. Zadané klíče umožňují nejen kopírovat soubory, ale také zachovat strukturu složek.

/T- vytvoří kopii původní struktury složek bez kopírování souborů. Pomocí této funkce můžete vytvářet nové projekty. Někdy je užitečné pouze zopakovat strukturu složek, aniž byste z ní kopírovali konkrétní informace.

/U- zkopíruje ze zdrojové složky pouze ty soubory, které se nacházejí v cílové složce. Tato funkce pomáhá aktualizovat část souborů v cílové složce, čímž eliminuje potřebu zadávat každý soubor samostatně.

/PROTI- zkontroluje všechny zkopírované soubory a porovná jejich obsah s původními soubory. Tento přepínač prodlužuje dobu kopírování, ale měl by být vždy použit při archivaci pomocí nástroje XCopy. Jinak hrozí, že si poškozená data zazálohujete a nebudete o nich vědět.




Nahoru