Dela via


xcopy

Kopierar filer och kataloger, inklusive underkataloger.

Exempel på hur du använder det här kommandot finns i Exempel.

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]

Parameterar

Parameter Beskrivning
<Källa> Obligatoriskt. Anger platsen och namnen på de filer som du vill kopiera. Den här parametern måste innehålla antingen en enhet eller en sökväg.
[<Mål>] Anger målet för de filer som du vill kopiera. Den här parametern kan innehålla en enhetsbeteckning och ett kolon, ett katalognamn, ett filnamn eller en kombination av dessa.
/w Visar följande meddelande och väntar på ditt svar innan du börjar kopiera filer:
Tryck på valfri tangent för att börja kopiera filer
/p Uppmanar dig att bekräfta om du vill skapa varje målfil.
/c Ignorerar fel.
/v Verifierar varje fil när den skrivs till målfilen för att se till att målfilerna är identiska med källfilerna.
/q Undertrycker visning av xcopy meddelanden.
/f Visar käll- och målfilnamn vid kopiering.
/l Genererar en lista över filer som ska kopieras, men som inte aktivt kopierar filerna.
/g Skapar dekrypterade målfiler när målet inte stöder kryptering.
/d [:MM-DD-ÅÅÅÅ] Kopierar källfiler som ändrats på eller efter det angivna datumet. Om du inte inkluderar ett MM-DD-ÅÅÅÅ-värdexcopy kopierar du alla källfiler som är nyare än befintliga målfiler . Med det här kommandoradsalternativet kan du uppdatera filer som har ändrats.
/u Kopierar filer från källan som endast finns på målet .
jag Om källan är en katalog eller innehåller jokertecken och målet inte finns, xcopy förutsätter vi att målet anger ett katalognamn och skapar en ny katalog. xcopy Kopierar sedan alla angivna filer till den nya katalogen. Som standard xcopy uppmanas du att ange om målet är en fil eller en katalog.
/ s Kopierar kataloger och underkataloger, såvida de inte är tomma. Om du utelämnar /sxcopy fungerar det i en enda katalog.
/ e Kopierar alla underkataloger, även om de är tomma. Använd /e med kommandoradsalternativen /s och /t .
/t Kopierar underkatalogstrukturen (dvs. trädet) endast, inte filer. Om du vill kopiera tomma kataloger måste du inkludera kommandoradsalternativet /e .
/k Kopierar filer och behåller det skrivskyddade attributet för målfiler om det finns på källfilerna . Som standard xcopy tar bort det skrivskyddade attributet.
/r Kopierar skrivskyddade filer.
/h Kopierar filer med dolda och systemfilattribut. Kopierar som standard xcopy inte dolda filer eller systemfiler
/a Kopierar endast källfiler som har sina arkivfilattribut inställda. /a ändrar inte källfilens arkivfilattribut. Information om hur du anger arkivfilattributet med hjälp av attrib finns i Relaterade länkar.
/m Kopierar källfiler som har sina arkivfilattribut inställda. Till skillnad från /a inaktiverar /m arkivfilattribut i de filer som anges i källan. Information om hur du anger arkivfilattributet med hjälp av attrib finns i Relaterade länkar.
/ n Skapar kopior med hjälp av NTFS korta fil- eller katalognamn. /n krävs när du kopierar filer eller kataloger från en NTFS-volym till en FAT-volym eller när FAT-filsystemets namngivningskonvention (dvs. 8,3 tecken) krävs i målfilsystemet . Målfilsystemet kan vara FAT eller NTFS.
/o Kopierar filägarskap och dacl-information (discretionary access control list).
/x Kopierar filgranskningsinställningar och SACL-information (systemåtkomstkontrollista) (antyder /o).
/exclude:Filnamn1[+[Filnamn2]][+[Filnamn3]( )] Anger en lista över filer. Minst en fil måste anges. Varje fil innehåller söksträngar med varje sträng på en separat rad i filen. När någon av strängarna matchar någon del av den absoluta sökvägen för filen som ska kopieras, undantas den filen från att kopieras. Om du till exempel anger strängen obj undantas alla filer under katalogen obj eller alla filer med tillägget .obj .
/y Undertrycker uppmaningen att bekräfta att du vill skriva över en befintlig målfil.
/-y Uppmanas att bekräfta att du vill skriva över en befintlig målfil.
/z Kopierar över ett nätverk i omstartsbart läge.
/b Kopierar den symboliska länken i stället för filerna. Den här parametern introducerades i Windows Vista®.
/j Kopierar filer utan buffring. Rekommenderas för mycket stora filer. Den här parametern lades till i Windows Server 2008 R2.
/komprimera Begär nätverkskomprimering under filöverföring där det är tillämpligt.
/[-]gles Aktiverar eller inaktiverar behåller det glesa tillståndet för filer under kopieringsprocessen. Om båda parametrarna anges åsidosätter /-sparse/sparse.
/noclone Försöker inte blockera kloning som en optimering.
/? Visar hjälp i kommandotolken.

Anmärkningar

  • Använda /z

    Om du förlorar anslutningen under kopieringsfasen (till exempel om servern som går offline bryter anslutningen) återupptas anslutningen när du har återupprättat anslutningen. /z visar också procentandelen av kopieringsåtgärden som har slutförts för varje fil.

  • Använda /y i miljövariabeln COPYCMD.

    Du kan använda /y i miljövariabeln COPYCMD. Du kan åsidosätta det här kommandot med hjälp av /-y på kommandoraden. Som standard uppmanas du att skriva över.

  • Kopiera krypterade filer

    Att kopiera krypterade filer till en volym som inte stöder EFS resulterar i ett fel. Dekryptera filerna först eller kopiera filerna till en volym som stöder EFS.

  • Lägga till filer

    Om du vill lägga till filer anger du en enskild fil för målet, men flera filer för källan (dvs. med jokertecken eller fil1+fil2+fil3-format).

  • Standardvärde för mål

    Om du utelämnar måletxcopy kopierar kommandot filerna till den aktuella katalogen.

  • Ange om målet är en fil eller katalog

    Om målet inte innehåller en befintlig katalog och inte slutar med ett omvänt snedstreck () visas följande meddelande:

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

    Tryck på F om du vill att filen eller filerna ska kopieras till en fil. Tryck på D om du vill att filen eller filerna ska kopieras till en katalog.

    Du kan ignorera det här meddelandet med hjälp av kommandoradsalternativet /i , vilket gör xcopy att du antar att målet är en katalog om källan är mer än en fil eller en katalog.

  • xcopy Använda kommandot för att ange arkivattribut för målfiler

    Kommandot xcopy skapar filer med arkivattributuppsättningen, oavsett om det här attributet har angetts i källfilen eller inte. Mer information om filattribut och attrib finns i Relaterade länkar.

  • Jämföra xcopy och diskcopy

    Om du har en disk som innehåller filer i underkataloger och du vill kopiera den till en disk som har ett annat format använder du xcopy kommandot i stället för diskcopy. diskcopy Eftersom kommandot kopierar diskar som spåras efter spår måste käll- och måldiskarna ha samma format. Kommandot xcopy har inte det här kravet. Använd xcopy om du inte behöver en fullständig diskbildkopia.

  • Otillräckligt minnesfel

    Ett "otillräckligt minne"-fel kan inträffa om du kör xcopy för att kopiera en fil eller mapp vars filnamnssökväg är större än 255 tecken.

  • Slutkoder för xcopy

    Om du vill bearbeta slutkoder som returneras av xcopyanvänder du parametern ErrorLevel på kommandoraden if i ett batchprogram. Ett exempel på ett batchprogram som bearbetar slutkoder med om finns i Relaterade länkar. I följande tabell visas varje slutkod och en beskrivning.

    Slutkod Beskrivning
    0 Filer kopierades utan fel.
    1 Det går inte att kopiera några filer.
    2 Användaren tryckte på CTRL+C för att avsluta xcopy.
    4 Initieringsfel uppstod. Det finns inte tillräckligt med minne eller diskutrymme, eller så har du angett ett ogiltigt enhetsnamn eller ogiltig syntax på kommandoraden.
    5 Diskskrivningsfel uppstod.

Exempel

1. Om du vill kopiera alla filer och underkataloger (inklusive tomma underkataloger) från enhet A till enhet B skriver du:

xcopy a: b: /s /e

2. Om du vill inkludera systemfiler eller dolda filer i föregående exempel lägger du till kommandoradsalternativet /h enligt följande:

xcopy a: b: /s /e /h

3. Om du vill uppdatera filer i katalogen \Reports med filerna i katalogen \Rawdata som har ändrats sedan den 29 december 1993 skriver du:

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

4. Om du vill uppdatera alla filer som finns i \Reports i föregående exempel, oavsett datum, skriver du:

xcopy \rawdata \reports /u

5. Om du vill hämta en lista över de filer som ska kopieras av föregående kommando (dvs. utan att faktiskt kopiera filerna) skriver du:

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

Filen xcopy.out visar alla filer som ska kopieras.

6. Om du vill kopiera katalogen \Customer och alla underkataloger till katalogen \\Public\Address på nätverksenheten H:, behålla det skrivskyddade attributet och uppmanas när en ny fil skapas på H:, skriver du:

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

7. Om du vill utfärda föregående kommando ska du se till att skapar katalogen \Address om den inte finns och utelämna meddelandet som visas när du skapar en ny katalog genom att xcopy lägga till kommandoradsalternativet /i på följande sätt:

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

8. Du kan skapa ett batchprogram för att utföra xcopy åtgärder och använda batchen om kommandot för att bearbeta slutkoden om ett fel inträffar. Följande batchprogram använder till exempel utbytbara parametrar för xcopy käll- och målparametrarna:

@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

Om du vill använda föregående batchprogram för att kopiera alla filer i katalogen C:\Prgmcode och dess underkataloger för att köra B skriver du:

copyit c:\prgmcode b:

Kommandotolken ersätter C:\Prgmcode med %1 och B: för %2och använder xcopy sedan kommandoradsalternativen /e och /s . Om xcopy det uppstår ett fel läser batchprogrammet slutkoden och går till etiketten som anges i lämplig IF ERRORLEVEL-instruktion och visar sedan lämpligt meddelande och avslutar batchprogrammet.

9. I det här exemplet kopieras alla icke-tomma kataloger plus filer med det associerade filtillägget efter asterisksymbolen.

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

I föregående exempel kopierar det här källparametervärdet .\toc*.yml samma tre filer även om dess två sökvägstecken .\ har tagits bort. Inga filer skulle dock kopieras om jokertecknet asterisk togs bort från källparametern, vilket gör att det bara är .\toc.yml.