Move-Item

Elem áthelyezése egyik helyről a másikra.

Syntax

Move-Item
    [-Path] <String[]>
    [[-Destination] <String>]
    [-Force]
    [-Filter <String>]
    [-Include <String[]>]
    [-Exclude <String[]>]
    [-PassThru]
    [-Credential <PSCredential>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]
Move-Item
    -LiteralPath <String[]>
    [[-Destination] <String>]
    [-Force]
    [-Filter <String>]
    [-Include <String[]>]
    [-Exclude <String[]>]
    [-PassThru]
    [-Credential <PSCredential>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

A Move-Item parancsmag áthelyez egy elemet, beleértve annak tulajdonságait, tartalmát és gyermekelemeit egyik helyről a másik helyre. A helyeket ugyanannak a szolgáltatónak kell támogatnia.

Áthelyezhet például egy fájlt vagy alkönyvtárat egyik könyvtárból a másikba, vagy áthelyezhet egy beállításjegyzék-alkulcsot egyik kulcsról a másikra. Amikor áthelyez egy elemet, az új helyre kerül, és törlődik az eredeti helyről.

Példák

1. példa: Fájl áthelyezése egy másik könyvtárba és átnevezése

Ez a parancs áthelyezi a fájlt a Test.txtC: meghajtóról a E:\Temp könyvtárba, és átnevezi a fájlról test.txt a könyvtárra tst.txt.

Move-Item -Path C:\test.txt -Destination E:\Temp\tst.txt

2. példa: Könyvtár és tartalma áthelyezése másik könyvtárba

Ez a parancs áthelyezi a C:\Temp könyvtárat és annak tartalmát a C:\Logs könyvtárba. A Temp könyvtár, valamint annak összes alkönyvtára és fájlja megjelenik a Logs könyvtárban.

Move-Item -Path C:\Temp -Destination C:\Logs

3. példa: Egy adott bővítmény összes fájljának áthelyezése az aktuális könyvtárból egy másik könyvtárba

Ez a parancs áthelyezi az aktuális könyvtárban lévő összes szövegfájlt (*.txtpont (.)) a C:\Logs könyvtárba.

Move-Item -Path .\*.txt -Destination C:\Logs

4. példa: Egy adott bővítmény összes fájljának rekurzív áthelyezése az aktuális könyvtárból egy másik könyvtárba

Ez a parancs az összes szövegfájlt áthelyezi az aktuális könyvtárból és az összes alkönyvtárból rekurzív módon a C:\TextFiles könyvtárba.

Get-ChildItem -Path ".\*.txt" -Recurse | Move-Item -Destination "C:\TextFiles"

A parancs a Get-ChildItem parancsmaggal lekéri az aktuális könyvtár összes gyermekelemét (a pont (.)) és annak alkönyvtárait, amelyek fájlnévkiterjesztéssel rendelkeznek *.txt . A Recurse paraméter használatával teszi rekurzívvá a lekérést, az Include paraméter pedig a fájlokra való *.txt lekérést.

A folyamatkezelő (|) elküldi a parancs Move-Itemeredményeit a könyvtárba áthelyező TextFiles parancsnak.

Ha az áthelyezendő C:\Textfiles fájlok neve megegyezik, hibaüzenet jelenik meg, Move-Item és folytatódik, de csak egy fájlt helyez át, amelybe az egyes nevek tartoznak C:\Textfiles. A többi fájl az eredeti könyvtárakban marad.

Ha a Textfiles könyvtár (vagy a célútvonal bármely más eleme) nem létezik, a parancs meghiúsul. A hiányzó könyvtár nem jön létre Önnek, még akkor sem, ha a Force paramétert használja. Move-Item áthelyezi az első elemet egy hívott Textfiles fájlba, majd hibaüzenet jelenik meg, amely azt jelzi, hogy a fájl már létezik.

Emellett alapértelmezés szerint Get-ChildItem nem helyezi át a rejtett fájlokat. Rejtett fájlok áthelyezéséhez használja a Force paramétert a következővel Get-ChildItem: .

Feljegyzés

A Windows PowerShell 2.0-ban a parancsmag Recurse paraméterének Get-ChildItem használatakor az Elérési út paraméter értékének tárolónak kell lennie. Az Include paraméter használatával adja meg a *.txt fájlnévkiterjesztés szűrőt (Get-ChildItem -Path .\* -Include *.txt -Recurse | Move-Item -Destination C:\TextFiles).

5. példa: Beállításkulcsok és értékek áthelyezése egy másik kulcsra

Ez a parancs a beállításkulcson HKLM\Software belüli MyCompany beállításkulcsokat és értékeket a MyNewCompany kulcsba helyezi át. A helyettesítő karakter (*) azt jelzi, hogy a kulcs tartalmát MyCompany át kell helyezni, nem magát a kulcsot. Ebben a parancsban a választható elérési út és cél paraméternevek ki lesznek hagyva.

Move-Item "HKLM:\software\mycompany\*" "HKLM:\software\mynewcompany"

6. példa: Könyvtár és tartalma áthelyezése a megadott könyvtár alkönyvtárába

Ez a parancs áthelyezi a Logs[Sept`06] könyvtárat (és annak tartalmát) a Logs[2006] könyvtárba.

Move-Item -LiteralPath 'Logs[Sept`06]' -Destination 'Logs[2006]'

Az Elérési út helyett a LiteralPath paramétert használja a rendszer, mivel az eredeti könyvtárnév bal oldali zárójelet és jobb oldali szögletes zárójelet ([és ]) tartalmaz. Az elérési út egy idézőjelben (') is szerepel, hogy a háttérjel (`) ne legyen félreértelmezve.

A Cél paramétert idézőjelek közé is kell foglalni, mert olyan zárójeleket tartalmaz, amelyek félreérthetőek.

Paraméterek

-Confirm

Jóváhagyást kér a parancsmag futtatása előtt.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Feljegyzés

Ezt a paramétert a PowerShell-lel telepített szolgáltatók nem támogatják. Ha megszemélyesíteni szeretne egy másik felhasználót, vagy a parancsmag futtatásakor emeli a hitelesítő adatait, használja az Invoke-Command parancsot.

Type:PSCredential
Position:Named
Default value:Current user
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Destination

Megadja az elemek áthelyezési helyének elérési útját. Az alapértelmezett az aktuális könyvtár. A helyettesítő karakterek használata nem engedélyezett.

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

Type:String
Position:1
Default value:Current directory
Required:False
Accept pipeline input:True
Accept wildcard characters:True

-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 az 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\*ha a helyettesítő karakter a könyvtár tartalmát C:\Windows adja meg.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Filter

Egy szűrőt ad meg, amely megfelel az Elérési út paraméternek. A Fájlrendszer-szolgáltató az egyetlen telepített PowerShell-szolgáltató, amely támogatja a szűrők használatát. A Fájlrendszer szűrőnyelvének szintaxisa about_Wildcards található. 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.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Force

Kényszeríti a parancs futtatását anélkül, hogy felhasználói megerősítést kérne. A megvalósítás szolgáltatónként eltérő. További információ: about_Providers.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters: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 az 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\*amikor a helyettesítő karakter a könyvtár tartalmát C:\Windows adja meg.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-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 út tartalmaz feloldó karaktereket, csatolja egy idézőjelbe ('). Az idézőjelek azt mondják a PowerShellnek, hogy ne értelmezzen karaktereket feloldósorozatként.

További információ: about_Quoting_Rules.

Type:String[]
Aliases:PSPath, LP
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-PassThru

Az áthelyezett elemet jelképező objektumot ad vissza. Ez a parancsmag alapértelmezés szerint nem hoz létre kimenetet.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Path

Megadja az elemek aktuális helyének elérési útját. Az alapértelmezett az aktuális könyvtár. A helyettesítő karakterek használata engedélyezett.

Type:String[]
Position:0
Default value:Current directory
Required:True
Accept pipeline input:True
Accept wildcard characters:True

-WhatIf

Bemutatja, mi történne a parancsmag futtatásakor. A parancsmag nem fut.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Bevitelek

String

A parancsmag elérési útját tartalmazó sztringet csövezheti.

Kimenetek

None

Ez a parancsmag alapértelmezés szerint nem ad vissza kimenetet.

PSObject

A PassThru paraméter használatakor ez a parancsmag az áthelyezett elemet képviselő objektumot adja vissza.

Jegyzetek

A PowerShell a következő aliasokat Move-Itemtartalmazza:

  • Összes platform:

    • mi
    • move
  • Windows:

    • mv
  • Ez a parancsmag áthelyezi a fájlokat az ugyanazon szolgáltató által támogatott meghajtók között, de a könyvtárakat csak ugyanazon a meghajtón belül helyezi át.

  • Mivel egy Move-Item parancs áthelyezi egy elem tulajdonságait, tartalmát és gyermekelemeit, az összes áthelyezés alapértelmezés szerint rekurzív.

  • 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 következőt Get-PSProvider: További információ: about_Providers.