xcopy

Fájlokat és könyvtárakat másol, beleértve az alkönyvtárakat is.

A parancs használatára vonatkozó példákat a Példák című témakörben találja.

Syntax

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]

Parameters

Parameter Description
<Forrás> Required. Megadja a másolni kívánt fájlok helyét és nevét. Ennek a paraméternek meghajtót vagy elérési utat kell tartalmaznia.
[<Cél>] Megadja a másolni kívánt fájlok célhelyét. Ez a paraméter tartalmazhat meghajtóbetűjelet és kettőspontot, könyvtárnevet, fájlnevet vagy ezek kombinációját.
/w Megjeleníti a következő üzenetet, és megvárja a választ a fájlok másolásának megkezdése előtt:
Nyomja le bármelyik billentyűt a fájl(ok) másolásának megkezdéséhez
/p Kéri, hogy erősítse meg, hogy létre szeretné-e hozni az egyes célfájlokat.
/c Ignores errors.
/v Ellenőrzi, hogy az egyes fájlok a célfájlba vannak-e írva, hogy a célfájlok megegyeznek-e a forrásfájlokkal.
/q Letiltja az üzenetek megjelenítését xcopy .
/f A forrás- és célfájlneveket jeleníti meg másolás közben.
/l Létrehozza a másolandó fájlok listáját, de nem másolja aktívan a fájlokat.
/g Visszafejtett célfájlokat hoz létre, ha a cél nem támogatja a titkosítást.
/d [:MM-DD-YYYY] A forrásfájlok másolása csak a megadott dátumon vagy után módosult. Ha nem ad meg HH-NN-ÉÉÉÉ értéket, másolja xcopy az összes olyan forrásfájlt , amely újabb, mint a meglévő célfájlok . Ezzel a parancssori beállítással frissítheti a módosított fájlokat.
/u Fájlokat másol a forrásból , amelyek csak a célhelyen léteznek.
/i Ha a forrás egy könyvtár vagy helyettesítő karaktereket tartalmaz, és a cél nem létezik, feltételezi, hogy xcopy a cél megadja a könyvtár nevét, és létrehoz egy új könyvtárat. xcopy Ezután másolja az összes megadott fájlt az új könyvtárba. Alapértelmezés szerint xcopy a rendszer kéri, hogy adja meg, hogy a cél fájl vagy könyvtár.
/s Könyvtárakat és alkönyvtárakat másol, kivéve, ha üresek. Ha kihagyod a /s könyvtárat, akkor xcopy egyetlen könyvtáron belül működik.
/e Az összes alkönyvtárat átmásolja, még akkor is, ha üresek. Használja az /e kapcsolót a /s és a /t parancssori kapcsolókkal.
/t Csak az alkönyvtárszerkezetet (azaz a fát) másolja át, a fájlokat nem. Üres könyvtárak másolásához meg kell adnia az /e parancssori kapcsolót.
/k Fájlokat másol, és megőrzi a csak olvasható attribútumot a célfájlokon , ha vannak a forrásfájlokban . Alapértelmezés szerint xcopy eltávolítja a csak olvasható attribútumot.
/r Írásvédett fájlok másolása.
/h Rejtett és rendszerfájl-attribútumokkal rendelkező fájlokat másol. Alapértelmezés szerint xcopy nem másol rejtett vagy rendszerfájlokat
/a Csak azokat a forrásfájlokat másolja, amelyeknek az archív fájlattribútumai be vannak állítva. /a nem módosítja a forrásfájl archív fájl attribútumát. Az archív fájl attribútumának az attrib használatával történő beállításáról a Kapcsolódó hivatkozások című témakörben olvashat bővebben.
/m Másolja azokat a forrásfájlokat , amelyeknek az archív fájlattribútumai be vannak állítva. A /a könyvtárral ellentétben a /m kikapcsolja az archív fájl attribútumait a forrásban megadott fájlokban. Az archív fájl attribútumának az attrib használatával történő beállításáról a Kapcsolódó hivatkozások című témakörben olvashat bővebben.
/n Másolatokat hoz létre az NTFS rövid fájl- vagy könyvtárnevekkel. /n kapcsolót akkor szükséges, ha fájlokat vagy könyvtárakat másol NTFS-kötetről FAT-kötetre, vagy ha a célfájlrendszeren a FAT fájlrendszer elnevezési konvenciója (azaz 8,3 karakter) szükséges. A cél fájlrendszer lehet FAT vagy NTFS.
/o Fájltulajdonlási és belátási hozzáférés-vezérlési lista (DACL) adatainak másolása.
/x Másolja a fájlnaplózási beállításokat és a rendszerhozzáférés-vezérlési lista (SACL) adatait (/ o).
/exclude:FileName1[+[FileName2]][+[FileName3]( )] Megadja a fájlok listáját. Legalább egy fájlt meg kell adni. Minden fájl keresési sztringeket tartalmaz, és mindegyik sztring a fájl egy külön sorában található. Ha a sztringek bármelyike megegyezik a másolandó fájl abszolút elérési útjának bármely részével, a program kizárja a fájl másolását. Például az obj karakterlánc megadása kizárja az obj könyvtár alatti összes fájlt vagy az .obj kiterjesztésű fájlokat.
/y Letiltja a meglévő célfájl felülírásának megerősítésére vonatkozó kérést.
/-y Kéri, hogy erősítse meg, hogy felülír egy meglévő célfájlt.
/z Újraindulható módban másolható a hálózaton.
/b Másolja a szimbolikus hivatkozást a fájlok helyett. Ez a paraméter a Windows Vista® rendszerben lett bevezetve.
/j Fájlok másolása pufferelés nélkül. Nagyon nagy fájlokhoz ajánlott. Ez a paraméter a Windows Server 2008 R2-ben lett hozzáadva.
/compress Szükség esetén kérje le a hálózati tömörítést a fájlátvitel során.
/[-]sparse Engedélyezi vagy letiltja a fájlok ritka állapotának megőrzését a másolási folyamat során. Ha mindkét paraméter meg van adva, a /-sparse felülbírálja a /sparse-t.
/noclone Nem próbálja optimalizálásként blokkolni a klónozást.
/? Súgó megjelenítése a parancssorban.

Remarks

  • Using /z

    Ha a másolási fázis során elveszíti a kapcsolatot (például ha a kiszolgáló offline állapotba kerül, megszakítja a kapcsolatot), a kapcsolat újbóli létrehozása után folytatódik. /z az egyes fájlok másolási műveletének százalékos arányát is megjeleníti.

  • A /y használata a COPYCMD környezeti változóban.

    A /y paramétert a COPYCMD környezeti változóban használhatja. Ezt a parancsot felülbírálhatja a parancssorban a /-y paranccsal. Alapértelmezés szerint a rendszer a felülírást kéri.

  • Titkosított fájlok másolása

    Ha titkosított fájlokat másol egy olyan kötetre, amely nem támogatja az EFS-t, az hibát eredményez. Először fejtse vissza a fájlokat, vagy másolja a fájlokat egy olyan kötetre, amely támogatja az EFS-t.

  • Appending files

    A fájlok hozzáfűzéséhez adjon meg egyetlen fájlt a célhelyhez, de több fájlt a forráshoz (azaz helyettesítő karakterek vagy fájl1+fájl2+fájl3 formátum használatával).

  • A cél alapértelmezett értéke

    Ha kihagyja a cél mezőt, a xcopy parancs az aktuális könyvtárba másolja a fájlokat.

  • Annak megadása, hogy a cél fájl vagy könyvtár legyen-e

    Ha a cél nem tartalmaz meglévő könyvtárat, és nem végződik fordított perjellel (), a következő üzenet jelenik meg:

    Does <Destination> specify a file name or directory name on the target(F = file, D = directory)?
    

    Nyomja le az F billentyűt, ha azt szeretné, hogy a fájl vagy a fájlok át legyenek másolva egy fájlba. Nyomja le a D billentyűt, ha azt szeretné, hogy a fájl vagy a fájlok át legyenek másolva egy könyvtárba.

    Ezt az üzenetet a /i parancssori kapcsolóval tilthatja le, ami xcopy azt feltételezi, hogy a cél egy könyvtár, ha a forrás egynél több fájl vagy könyvtár.

  • A paranccsal xcopy archív attribútum beállítása a célfájlokhoz

    A xcopy parancs létrehozza az archív attribútumkészlettel rendelkező fájlokat, függetlenül attól, hogy ez az attribútum be van-e állítva a forrásfájlban. A fájlattribútumokról és az attrib-ről további információt a Kapcsolódó hivatkozások című témakörben talál.

  • xcopy és diskcopy összehasonlítása

    Ha olyan lemeze van, amely alkönyvtárakban lévő fájlokat tartalmaz, és más formátumú lemezre szeretné másolni, használja a parancsot ahelyettxcopy, hogy a diskcopy parancsot használna. Mivel a diskcopy parancs nyomon követve másolja a lemezeket, a forrás- és céllemezeknek azonos formátumúnak kell lenniük. A xcopy parancsnak nincs ilyen követelménye. Csak akkor használja xcopy , ha teljes lemezképmásolásra van szüksége.

  • Elégtelen memória hiba

    "Nem elegendő memória" hiba léphet fel, ha egy olyan fájl vagy mappa másolására fut, xcopy amelynek fájlnév elérési útja nagyobb, mint 255 karakter.

  • Kilépési kódok a következőhöz: xcopy

    A által xcopyvisszaadott kilépési kódok feldolgozásához használja az ErrorLevel paramétert az if parancssorban egy kötegelt programban. A kilépési kódokat az if használatával feldolgozó kötegelt programra a Kapcsolódó hivatkozások című témakörben talál példát. Az alábbi táblázat felsorolja az egyes kilépési kódot és egy leírást.

    Exit code Description
    0 A fájlok másolása hiba nélkül történt.
    1 Nem található másolni kívánt fájl.
    2 A felhasználó a CTRL+C billentyűkombinációt lenyomva leállítja a elemet xcopy.
    4 Inicializálási hiba történt. Nincs elegendő memória vagy lemezterület, vagy érvénytelen meghajtónevet vagy érvénytelen szintaxist adott meg a parancssorban.
    5 Lemezírási hiba történt.

Examples

1. Az összes fájl és alkönyvtár (beleértve az üres alkönyvtárakat is) másolásához az A meghajtóról a B meghajtóra írja be:

xcopy a: b: /s /e

2. Ha bármilyen rendszert vagy rejtett fájlt szeretne belefoglalni az előző példába, adja hozzá a /h parancssori opciót az alábbiak szerint:

xcopy a: b: /s /e /h

3. A \Reports könyvtárban lévő fájlok frissítéséhez a \Rawdata könyvtárban lévő fájlokkal, amelyek 1993. december 29. óta megváltoztak, írja be a következőt:

xcopy \rawdata \reports /d:12-29-1993

4. Az előző példában a \Jelentésekben található összes fájl frissítéséhez dátumtól függetlenül írja be a következőt:

xcopy \rawdata \reports /u

5. Az előző paranccsal másolandó fájlok listájának megszerzéséhez (azaz a fájlok tényleges másolása nélkül) írja be:

xcopy \rawdata \reports /d:12-29-1993 /l > xcopy.out

A xcopy.out fájl felsorolja a másolandó összes fájlt.

6. Ha a \Customer könyvtárat és az összes alkönyvtárat a H hálózati meghajtó \\Public\Address könyvtárába szeretné másolni, tartsa meg a csak olvasható attribútumot, és a rendszer kérje a rendszer a H: új fájl létrehozásakor a következőt:

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

7. Az előző parancs kiadásához győződjön meg arról, hogy xcopy létrehozza a \Address könyvtárat, ha az nem létezik, és tiltsa le az új könyvtár létrehozásakor megjelenő üzenetet, adja hozzá az /i parancssori kapcsolót az alábbiak szerint:

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

8. Létrehozhat egy kötegelt programot a műveletek végrehajtásához xcopy , és a batch if paranccsal feldolgozhatja a kilépési kódot, ha hiba lép fel. A következő kötegelt program például helyettesíthető paramétereket használ a forrás- és célparaméterekhez xcopy :

@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

Ha az előző kötegprogramot a C:\Prgmcode könyvtárban és annak alkönyvtáraiban lévő összes fájl másolásához szeretné használni a B meghajtóhoz, írja be a következőt:

copyit c:\prgmcode b:

A parancsértelmező a C:\Prgmcode helyett a %1, a B: helyett a%2helyett helyettesíti, majd az /e és /s parancssori kapcsolókkal használjaxcopy. Ha xcopy hibát észlel, a kötegelt program beolvassa a kilépési kódot, és a megfelelő IF ERRORLEVEL utasításban jelzett címkére lép, majd megjeleníti a megfelelő üzenetet, és kilép a kötegelt programból.

9. Ez a példa az összes nem üres könyvtárat másolja, valamint a csillag szimbólum után a hozzá tartozó fájlkiterjesztéssel rendelkező fájlokat.

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

Az előző példában ez a forrásparaméter értéke .\toc*.yml ugyanazt a 3 fájlt másolja, még akkor is, ha a két elérési út karaktere .\ el lett távolítva. Azonban nem másolna fájlokat, ha a csillag helyettesítő karaktert eltávolítanánk a forrásparaméterből, így csak .\toc.yml lenne.