Megosztás a következőn keresztül:


Copy-Item

Elem másolása egyik helyről a másikra.

Syntax

Path (Alapértelmezett)

Copy-Item
    [-Path] <String[]>
    [[-Destination] <String>]
    [-Container]
    [-Force]
    [-Filter <String>]
    [-Include <String[]>]
    [-Exclude <String[]>]
    [-Recurse]
    [-PassThru]
    [-Credential <PSCredential>]
    [-WhatIf]
    [-Confirm]
    [-UseTransaction]
    [-FromSession <PSSession>]
    [-ToSession <PSSession>]
    [<CommonParameters>]

LiteralPath

Copy-Item
    [[-Destination] <String>]
    -LiteralPath <String[]>
    [-Container]
    [-Force]
    [-Filter <String>]
    [-Include <String[]>]
    [-Exclude <String[]>]
    [-Recurse]
    [-PassThru]
    [-Credential <PSCredential>]
    [-WhatIf]
    [-Confirm]
    [-UseTransaction]
    [-FromSession <PSSession>]
    [-ToSession <PSSession>]
    [<CommonParameters>]

Description

A Copy-Item parancsmag egy elemet másol egy helyről egy másik helyre ugyanabban a névtérben. Például átmásolhat egy fájlt egy mappába, de nem tud fájlokat másolni egy tanúsítványmeghajtóra.

Ez a parancsmag nem vágja ki vagy törli a másolt elemeket. A parancsmag által másolható elemek az elemet elérhetővé tevő PowerShell-szolgáltatótól függenek. Másolhat például fájlokat és könyvtárakat egy fájlrendszer-meghajtón, valamint a beállításkulcsokat és bejegyzéseket a beállításjegyzék-meghajtón.

Ez a parancsmag ugyanabban a parancsban másolhatja és átnevezheti az elemeket. Egy elem átnevezéséhez írja be az új nevet a Cél paraméter értékébe. Ha át szeretne nevezni egy elemet, és nem másolja, használja a Rename-Item parancsmagot.

Példák

1. példa: Fájl másolása a megadott könyvtárba

Ez a példa a mar1604.log.txt fájlt a C:\Presentation könyvtárba másolja. Az eredeti fájl nem törlődik.

Copy-Item "C:\Wabash\Logfiles\mar1604.log.txt" -Destination "C:\Presentation"

2. példa: Könyvtártartalom másolása meglévő könyvtárba

Ez a példa a C:\Logfiles könyvtár tartalmát a meglévő C:\Drawings könyvtárba másolja. A Logfiles könyvtár nincs másolva.

Ha a Logfiles könyvtár alkönyvtárakban lévő fájlokat tartalmaz, a program ezeket az alkönyvtárakat érintetlen fájlfákkal másolja. Alapértelmezés szerint a Tároló paraméter értéke Igaz, amely megőrzi a címtárstruktúrát.

Copy-Item -Path "C:\Logfiles\*" -Destination "C:\Drawings" -Recurse

Megjegyzés:

Ha a Logfiles könyvtárat is bele kell foglalnia a másolatba, távolítsa el a \* a Elérési út. Például:

Copy-Item -Path "C:\Logfiles" -Destination "C:\Drawings" -Recurse

3. példa: Könyvtár tartalmának másolása új könyvtárba

Ez a példa átmásolja a C:\Logfiles forráskönyvtár tartalmát, és létrehoz egy új célkönyvtárat. A \Logs új célkönyvtár C:\Drawingsjön létre.

Ha fel szeretné venni a forráskönyvtár nevét, másolja át egy meglévő célkönyvtárba a 2. példa. Vagy nevezze el az új célkönyvtárat úgy, hogy ugyanaz legyen, mint a forráskönyvtár.

Copy-Item -Path "C:\Logfiles" -Destination "C:\Drawings\Logs" -Recurse

Megjegyzés:

Ha a Elérési út\*tartalmaz, a könyvtár összes fájltartalma az alkönyvtárak nélkül az új célkönyvtárba lesz másolva. Például:

Copy-Item -Path "C:\Logfiles\*" -Destination "C:\Drawings\Logs" -Recurse

4. példa: Fájl másolása a megadott könyvtárba, majd a fájl átnevezése

Ez a példa a Copy-Item parancsmaggal másolja a Get-Widget.ps1 szkriptet a \\Server01\Share könyvtárból a \\Server12\ScriptArchive könyvtárba. A másolási művelet részeként a parancs Get-Widget.ps1-ról Get-Widget.ps1.txt-ra módosítja az elem nevét, hogy az e-mailekhez csatolható legyen.

Copy-Item "\\Server01\Share\Get-Widget.ps1" -Destination "\\Server12\ScriptArchive\Get-Widget.ps1.txt"

5. példa: Fájl másolása távoli számítógépre

A rendszer munkamenetet hoz létre a Server01 nevű távoli számítógépen a Contoso\User01 hitelesítő adataival, és az eredményeket a $Sessionnevű változóban tárolja.

A Copy-Item parancsmag test.log másol a D:\Folder001 mappából a távoli számítógép C:\Folder001_Copy mappájába a $Session változóban tárolt munkamenet-információk használatával. Az eredeti fájl nem törlődik.

$Session = New-PSSession -ComputerName "Server01" -Credential "Contoso\User01"
Copy-Item "D:\Folder001\test.log" -Destination "C:\Folder001_Copy\" -ToSession $Session

6. példa: Mappa teljes tartalmának másolása távoli számítógépre

A rendszer munkamenetet hoz létre a Server01 nevű távoli számítógépen a Contoso\User01 hitelesítő adataival, és az eredményeket a $Sessionnevű változóban tárolja.

A Copy-Item parancsmag a D:\Folder002 mappából a távoli számítógép C:\Folder002_Copy könyvtárába másolja a teljes tartalmat a $Session változóban tárolt munkamenet-információk használatával. Az almappák a fájlfáikkal együtt vannak másolva.

$Session = New-PSSession -ComputerName "Server02" -Credential "Contoso\User01"
Copy-Item "D:\Folder002\" -Destination "C:\Folder002_Copy\" -ToSession $Session

7. példa: Egy mappa teljes tartalmának rekurzív másolása távoli számítógépre

A rendszer munkamenetet hoz létre a Server01 nevű távoli számítógépen a Contoso\User01 hitelesítő adataival, és az eredményeket a $Sessionnevű változóban tárolja.

A Copy-Item parancsmag a D:\Folder003 mappából a távoli számítógép C:\Folder003_Copy könyvtárába másolja a teljes tartalmat a $Session változóban tárolt munkamenet-információk használatával. Az almappák a fájlfáikkal együtt vannak másolva. Mivel a Recurse paramétert használja, a művelet létrehozza a Folder003_Copy mappát, ha még nem létezik.

$Session = New-PSSession -ComputerName "Server04" -Credential "Contoso\User01"
Copy-Item "D:\Folder003\" -Destination "C:\Folder003_Copy\" -ToSession $Session -Recurse

8. példa: Fájl másolása távoli számítógépre, majd a fájl átnevezése

A rendszer munkamenetet hoz létre a Server01 nevű távoli számítógépen a Contoso\User01 hitelesítő adataival, és az eredményeket a $Sessionnevű változóban tárolja.

A Copy-Item parancsmag scriptingexample.ps1 másol a D:\Folder004 mappából a távoli számítógép C:\Folder004_Copy mappájába a $Session változóban tárolt munkamenet-információk használatával. A másolási művelet részeként a parancs scriptingexample.ps1-ról scriptingexample_copy.ps1-ra módosítja az elem nevét, hogy az e-mailekhez csatolható legyen. Az eredeti fájl nem törlődik.

$Session = New-PSSession -ComputerName "Server04" -Credential "Contoso\User01"
Copy-Item "D:\Folder004\scriptingexample.ps1" -Destination "C:\Folder004_Copy\scriptingexample_copy.ps1" -ToSession $Session

9. példa: Távoli fájl másolása a helyi számítógépre

A rendszer munkamenetet hoz létre a Server01 nevű távoli számítógépen a Contoso\User01 hitelesítő adataival, és az eredményeket a $Sessionnevű változóban tárolja.

A Copy-Item parancsmag test.log másol a távoli C:\MyRemoteData\ a helyi D:\MyLocalData mappába a $Session változóban tárolt munkamenetadatok használatával. Az eredeti fájl nem törlődik.

$Session = New-PSSession -ComputerName "Server01" -Credential "Contoso\User01"
Copy-Item "C:\MyRemoteData\test.log" -Destination "D:\MyLocalData\" -FromSession $Session

10. példa: Távoli mappa teljes tartalmának másolása a helyi számítógépre

A rendszer munkamenetet hoz létre a Server01 nevű távoli számítógépen a Contoso\User01 hitelesítő adataival, és az eredményeket a $Sessionnevű változóban tárolja.

A Copy-Item parancsmag a teljes tartalmat átmásolja a távoli C:\MyRemoteData\scripts mappából a helyi D:\MyLocalData mappába a $Session változóban tárolt munkamenetadatok használatával. Ha a szkriptek mappája almappákban lévő fájlokat tartalmaz, a program az almappákat érintetlen fájlfákkal másolja.

$Session = New-PSSession -ComputerName "Server01" -Credential "Contoso\User01"
Copy-Item "C:\MyRemoteData\scripts" -Destination "D:\MyLocalData\" -FromSession $Session

11. példa: Távoli mappa teljes tartalmának rekurzív másolása a helyi számítógépre

A rendszer munkamenetet hoz létre a Server01 nevű távoli számítógépen a Contoso\User01 hitelesítő adataival, és az eredményeket a $Sessionnevű változóban tárolja.

A Copy-Item parancsmag a teljes tartalmat átmásolja a távoli C:\MyRemoteData\scripts mappából a helyi D:\MyLocalData\scripts mappába a $Session változóban tárolt munkamenetadatok használatával. Mivel a Recurse paramétert használja, a művelet létrehozza a szkriptek mappát, ha még nem létezik. Ha a szkriptek mappája almappákban lévő fájlokat tartalmaz, a program az almappákat érintetlen fájlfákkal másolja.

$Session = New-PSSession -ComputerName "Server01" -Credential "Contoso\User01"
Copy-Item "C:\MyRemoteData\scripts" -Destination "D:\MyLocalData\scripts" -FromSession $Session -Recurse

Paraméterek

-Confirm

Megerősítést kér a parancsmag futtatása előtt.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:False
Támogatja a helyettesítő karaktereket:False
DontShow:False
Aliasok:Cf

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Container

Azt jelzi, hogy ez a parancsmag megőrzi a tárolóobjektumokat a másolási művelet során. Alapértelmezés szerint a Tároló paraméter értéke True.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:True
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Credential

Megjegyzés:

Ezt a paramétert a PowerShell-lel telepített szolgáltatók nem támogatják. Ha egy másik felhasználó szerepében szeretne fellépni, vagy emelni szeretné hitelesítő adatait a parancsmag futtatásakor, használja a Invoke-Command.

Paramétertulajdonságok

Típus:PSCredential
Alapértelmezett érték:Current user
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:True
Fennmaradó argumentumokból származó érték:False

-Destination

Megadja az új hely elérési útját. Az alapértelmezett az aktuális könyvtár.

A másolt elem átnevezéséhez adjon meg egy új nevet a Cél paraméter értékében.

Paramétertulajdonságok

Típus:String
Alapértelmezett érték:Current directory
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:1
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:True
Fennmaradó argumentumokból származó érték:False

-Exclude

Sztringtömbként olyan elemet vagy elemeket határoz meg, amelyeket ez a parancsmag kizár a műveletből. Ennek a paraméternek az értéke a Elérési út paramétert minősíti. Adjon meg egy elérési út elemet vagy mintát, például *.txt. A helyettesítő karakterek használata engedélyezett. A Kizárás paraméter csak akkor érvényes, ha a parancs egy elem tartalmát tartalmazza, például C:\Windows\*, ahol a helyettesítő karakter a C:\Windows könyvtár tartalmát adja meg.

Paramétertulajdonságok

Típus:

String[]

Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:True
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Filter

Szűrőt ad meg a útvonal paraméter minősítéséhez. A Fájlrendszer szolgáltató az egyetlen telepített PowerShell-szolgáltató, amely támogatja a szűrők használatát. A FileSystem szűrőnyelvének szintaxisát az about_Wildcards-ban találhatja meg. A szűrők hatékonyabbak, mint a többi paraméter, mivel a szolgáltató akkor alkalmazza őket, amikor a parancsmag lekéri az objektumokat, és nem azt, hogy a PowerShell szűrje az objektumokat a lekérés után.

Paramétertulajdonságok

Típus:String
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:True
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Force

Azt jelzi, hogy ez a parancsmag olyan elemeket másol, amelyek egyébként nem módosíthatók, például írásvédett fájl vagy alias másolása.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:False
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-FromSession

Megadja azt a PSSession objektumot, amelyből a távoli fájl másolása történik. Ha ezt a paramétert használja, a Path és LiteralPath paraméterek a távoli gépen lévő helyi elérési útra vonatkoznak.

Paramétertulajdonságok

Típus:PSSession
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Include

Sztringtömbként egy elemet vagy elemet határoz meg, amelyet ez a parancsmag tartalmaz a műveletben. Ennek a paraméternek az értéke a Elérési út paramétert minősíti. Adjon meg egy elérési út elemet vagy mintát, például "*.txt". A helyettesítő karakterek használata engedélyezett. Az Include paraméter csak akkor érvényes, ha a parancs egy elem tartalmát tartalmazza, például C:\Windows\*, ahol a helyettesítő karakter a C:\Windows könyvtár tartalmát adja meg.

Paramétertulajdonságok

Típus:

String[]

Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:True
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-LiteralPath

Egy vagy több hely elérési útját adja meg. A LiteralPath értékét pontosan a beírt módon használja a rendszer. A rendszer egyetlen karaktert sem értelmez helyettesítő karakterként. Ha az elérési útvonal escape karaktereket tartalmaz, tedd azt egyes idézőjelek közé. Az egyes idézőjelek azt mondják a PowerShellnek, hogy egyetlen karaktert se értelmezzen escape szekvenciaként.

További információk az about_Quoting_Rules oldalon találhatók: .

Paramétertulajdonságok

Típus:

String[]

Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False
Aliasok:PSPath

Paraméterkészletek

LiteralPath
Position:Named
Kötelező:True
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:True
Fennmaradó argumentumokból származó érték:False

-PassThru

Egy objektumot ad vissza, amely azt az elemet jelöli, amellyel dolgozik. Ez a parancsmag alapértelmezés szerint nem hoz létre kimenetet.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:False
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Path

Sztringtömbként megadja a másolandó elemek elérési útját. A helyettesítő karakterek használata engedélyezett.

Paramétertulajdonságok

Típus:

String[]

Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:True
DontShow:False

Paraméterkészletek

Path
Position:0
Kötelező:True
Folyamatból származó érték:True
Folyamatból származó érték tulajdonságnév alapján:True
Fennmaradó argumentumokból származó érték:False

-Recurse

Azt jelzi, hogy ez a parancsmag rekurzív másolatot készít.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:False
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-ToSession

Megadja azt a PSSession objektumot, amelybe a távoli fájl másolása történik. Ha ezt a paramétert használja, a Cél paraméter a távoli gép helyi elérési útjára hivatkozik.

Paramétertulajdonságok

Típus:PSSession
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-UseTransaction

Tartalmazza a parancsot az aktív tranzakcióban. Ez a paraméter csak akkor érvényes, ha egy tranzakció folyamatban van. További információ: about_Transactions.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:False
Támogatja a helyettesítő karaktereket:False
DontShow:False
Aliasok:usetx

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-WhatIf

Megjeleníti, mi történne, ha a parancsmag futna. A parancsprogram nem lett futtatva.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:False
Támogatja a helyettesítő karaktereket:False
DontShow:False
Aliasok:Wi

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

CommonParameters

Ez a parancsmag a következő gyakori paramétereket támogatja: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction és -WarningVariable. További információért lásd about_CommonParameters.

Bevitelek

String

Egy elérési utat tartalmazó karakterláncot küldhet tovább ehhez a cmdlethez.

Kimenetek

None or an object representing the copied item

A PassThru paraméter használatakor ez a parancsmag a másolt elemet képviselő objektumot adja vissza. Ellenkező esetben ez a parancsmag nem hoz létre kimenetet.

Jegyzetek

Ez a parancsmag úgy lett kialakítva, hogy bármely szolgáltató által közzétett adatokkal működjön együtt. A munkamenetben elérhető szolgáltatók listájához írja be a Get-PSProvider. További információért lásd a about_Providerscímű részt.