Move-Item

Pro 18, 2021
Modul: Přesune položku z jednoho umístění do jiného.

Syntaxe

Popis

Kurzívní rutina Move-Item přesune položku, včetně jejích vlastností, obsahu a podřízených položek, z jednoho umístění do jiného. Umístění musí být podporována stejným zprostředkovatelem. může například přesunout soubor nebo podadresář z jednoho adresáře do jiného nebo přesunout podklíč registru z jednoho klíče do jiného. při přesunu je položka přidána do nového umístění a odstraněna z původního umístění.

Příklady

Příklad 1: Přesun souboru do jiného adresáře a přejmenování

Tento příkaz přesune soubor Test.txt z jednotky C: do adresáře E:\Temp a přejmenuje jej z test.txt na tst.txt.

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

Příklad 2: Přesun adresáře a jeho obsahu do jiného adresáře

Tento příkaz přesune adresář C:\Temp a jeho obsah do adresáře C:\Logs. adresář „Temp“ a všechny jeho podadresáře a soubory se pak objeví v adresáři „Logs“.

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

Příklad 3: Přesun všech souborů se zadanou příponou z aktuálního adresáře do jiného adresáře

Tento příkaz přesune všechny textové soubory (*.txt) v aktuálním adresáři (reprezentované tečkou(.)) do adresáře C:\Logs.

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

Příklad 4: Rekurzivní přesun všech souborů se zadanou příponou z aktuálního adresáře do jiného adresáře

Tento příkaz přesune všechny textové soubory z aktuálního adresáře a všech podadresářů,rekurzivně, do adresáře „C:\TextFiles“.

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

Příkaz použije rutinu Get-ChildItem k získání všech podřízených položek v aktuálním adresáři(reprezentovaném tečkou ) a jeho podadresářích, které mají „.txt“.Příkaz používá parametr Recurse pro rekurzivní vyhledávání a parametr Include pro omezení vyhledávání na soubory „.txt“.

Operátor pipeline (|) odešle výsledky tohoto příkazu příkazu příkazu Move-Item, který přesune textové soubory do adresáře „TextFiles“.

Pokud mají soubory, které mají být přesunuty do „C:\Textfiles“, stejné jméno, Move-Item zobrazí chybu a pokračuje, ale do „C:\Textfiles“ přesune pouze jeden soubor s každým jménem. ostatní soubory zůstanou ve svých původních adresářích.

Pokud adresář „Textfiles“ (nebo jiný prvek cílové cesty) neexistuje, příkaz selže. chybějící adresář se nevytvoří, ani když použijete parametr Force.Příkaz Move-Item přesune první položku do souboru s názvem „Textfiles“ a poté zobrazí chybu s vysvětlením, že soubor již existuje.

Příkaz Get-ChildItem také ve výchozím nastavení nepřesouvá skryté soubory.Chcete-li přesunout skryté soubory, použijte parametr Force s příkazem Get-ChildItem.

Poznámka

V prostředí Windows PowerShell 2.0 musí být při použití parametru Recurse rutiny Get-ChildItem hodnotou parametru Path kontejner.

Příklad 5: Přesun klíčů a hodnot registru do jiného klíče

Tento příkaz přesune klíče a hodnoty registru v rámci klíče registru „MyCompany“ vHKLM\Software do klíče „MyNewCompany“.Zástupný znak (*) označuje, že má být přesunut obsah klíče „MyCompany“, nikoli klíč samotný.V tomto příkazu jsou vynechány nepovinné názvy parametrů Cesta a Cíl.

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

Příklad 6: Přesun adresáře a jeho obsahu do podadresáře zadaného adresáře

Tento příkaz přesune adresář „Logs“ (a jeho obsah) do adresáře „Logs“.

Move-Item -LiteralPath 'Logs' -Destination 'Logs'

Místo parametru Path se používá parametr LiteralPath, protože původní název adresářeobsahuje znaky levé a pravé závorky („“). cesta je také uzavřena v jednoduchých uvozovkách (“ ‚), aby nedošlo ke špatné interpretaci symbolu zpětného odkazu (`).

Parametr Destination nevyžaduje doslovnou cestu, protože proměnná Destination musí být také uzavřena v jednoduchých uvozovkách, protože obsahuje závorky, které mohou být chybně interpretovány.

Parameters

-Confirm

Před spuštěním rutiny vás vyzve k potvrzení.

Typ: PřepínačParametr
Aliasy: cf
Pozice: Named
Výchozí hodnota: False
Accept pipeline input: False
Accept wildcard characters: False
-Credential

Poznámka

Tento parametr není podporován žádným poskytovatelem nainstalovaným s PowerShell.Chcete-li se při spouštění této rutiny vydávat za jiného uživatele nebo zvýšit své pověření,použijte příkaz Invoke-Command.

Typ: PSCredential
Pozice: Jméno
Výchozí hodnota: Aktuální uživatel
Přijmout vstup do potrubí: True
Accept wildcard characters: False
-Destination

Určuje cestu k umístění, kam se položky přesouvají.Výchozí je aktuální adresář.Jsou povoleny zástupné znaky, ale výsledek musí určovat jediné umístění.

Chcete-li přejmenovat přesouvanou položku, zadejte nový název do hodnoty parametru Destination.

Typ: Řetězec
Poloha: 1
Výchozí hodnota: Aktuální adresář
Přijmout zadání potrubí: True
Accept wildcard characters: True
-Exclude

Určuje jako řetězcové pole položku nebo položky, které tato rutina vyloučí z operace. Hodnota tohoto parametru kvalifikuje parametr Path. Zadejte prvek nebo vzor cesty, například*.txt. Zástupné znaky jsou povoleny. Parametr Exclude je účinný pouze v případě, že příkaz zahrnuje obsah položky, například C:\Windows\*, kde zástupný znak určuje obsah adresáře C:\Windows.

Typ: Řetězec
Pozice: Název
Výchozí hodnota: Žádná
Přijímá vstup z potrubí: False
Accept wildcard characters: True

-Filter

Určuje filtr pro kvalifikaci parametru Path. Zprostředkovatel FileSystemprovider je jediným nainstalovaným zprostředkovatelem prostředí PowerShell, který podporuje použití filtrů. Syntaxi jazyka filtrů FileSystem naleznete v části about_Wildcards.Filtry jsou efektivnější než jiné parametry, protože poskytovatel je použije při načítání objektů, místo aby PowerShell filtroval objekty po jejich načtení.

Typ: Řetězec
Pozice: Název
Výchozí hodnota: Žádná
Přijímá vstup do potrubí: False
Accept wildcard characters: True
-Force

Způsobí spuštění příkazu bez vyžádání potvrzení uživatele.Implementace se u jednotlivých poskytovatelů liší, více informací naleznete v části about_Providers.

Typ: PřepínačParametr
Pozice: Název
Výchozí hodnota: False
Přijmout vstup z potrubí: False
Accept wildcard characters: False
-Include

Určuje jako řetězcové pole položku nebo položky, které tento rutina zahrnuje do operace. Hodnota tohoto parametru kvalifikuje parametr Path. Zadejte prvek nebo vzor cesty, například"*.txt". Zástupné znaky jsou povoleny. Parametr Include je účinný pouze v případě, že příkaz zahrnuje obsah položky, například C:\Windows\*, kde zástupný znak určuje obsah adresáře C:\Windows.

Typ: Řetězec
Pozice: Název
Výchozí hodnota: Žádná
Přijímá vstup z potrubí: False
Accept wildcard characters: True
-LiteralPath

Určuje cestu k jednomu nebo více místům. Hodnota LiteralPath se použije přesně tak, jak je zadána. Žádné znaky nejsou interpretovány jako zástupné znaky. Pokud cesta obsahuje znaky escape, uzavřete ji do jednoduchých uvozovek. Jednoduché uvozovky říkají prostředí PowerShell, aby neinterpretovalo žádné znakyjako escape sekvence.

Další informace naleznete v části about_Quoting_Rules.

Typ: Řetězec
Aliasy: PSPath, LP
Pozice: Název
Výchozí hodnota: Nic
Přijímá vstup do potrubí: True
Accept wildcard characters: False
-PassThru

Vrací objekt reprezentující položku, se kterou pracujete.Ve výchozím nastavení tato rutina negeneruje žádný výstup.

Typ: PřepínačParametr
Pozice: Název
Výchozí hodnota: False
Přijímá vstup do potrubí: False
Accept wildcard characters: False
-Path

Určuje cestu k aktuálnímu umístění položek.Výchozí je aktuální adresář.Jsou povoleny zástupné znaky.

Typ: Řetězec
Poloha: 0
Výchozí hodnota: Aktuální adresář
Přijímá vstup z potrubí: True
Accept wildcard characters: True
-WhatIf

Ukazuje, co by se stalo, kdyby se cmdlet spustil.Rutina se nespustí.

Typ: PřepínačParametr
Aliasy: wi
Pozice: Named
Výchozí hodnota: False
Accept pipeline input: False
Accept wildcard characters: False

Inputs

String

Do této rutiny můžete vložit řetězec obsahující cestu.

Výstupy

Žádný nebo objekt reprezentující přesunutou položku

Pokud použijete parametr PassThru, tato rutina vygeneruje objekt reprezentující přesunutou položku. jinak tato rutina negeneruje žádný výstup.

Poznámky

  • Tento rutina přesune soubory mezi jednotkami, které jsou podporovány stejným poskytovatelem, ale přesune pouze adresáře v rámci stejné jednotky.
  • Protože příkaz Move-Item přesune vlastnosti, obsah a podřízené položky položky, jsou všechny přesuny ve výchozím nastavení rekurzivní.
  • Tato rutina je navržena tak, aby pracovala s daty vystavenými libovolným poskytovatelem.Chcete-li zobrazit seznam poskytovatelů dostupných v relaci, zadejte příkaz Get-PSProvider. další informace naleznete v části about_Providers.
  • Clear-Item
  • Copy-Item
  • Get-Item
  • Invoke-Item
  • New-Item
  • Remove-Item
  • Rename-Item
  • Set-Item
  • about_Providers

.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.