Move-Item

dec 18, 2021
Module: Microsoft.PowerShell.Management

Verplaatst een item van de ene locatie naar de andere.

Syntax

Description

Het cmdlet Move-Item verplaatst een item, inclusief de eigenschappen, inhoud en child-items, van de ene locatie naar de andere locatie. De locaties moeten door dezelfde provider worden ondersteund. Zo kan bijvoorbeeld een bestand of submap van de ene map naar de andere worden verplaatst of een registersubkey van de ene sleutel naar de andere. Wanneer u een item verplaatst, wordt het aan de nieuwe locatie toegevoegd en van de oorspronkelijke locatie verwijderd.

Voorbeelden

Voorbeeld 1: Verplaats een bestand naar een andere directory en geef het een andere naam

Deze opdracht verplaatst het bestand Test.txt van het station C: naar de directory E:\Temp en hernoemt het van test.txt naar tst.txt.

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

Voorbeeld 2: Verplaats een directory en de inhoud ervan naar een andere directory

Deze opdracht verplaatst de directory C:\Temp en de inhoud ervan naar de directory C:\Logs. De directory “Temp” en alle submappen en bestanden ervan verschijnen dan in de directory “Logs”.

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

Voorbeeld 3: Verplaats alle bestanden met een opgegeven extensie van de huidige directory naar een andere directory

Deze opdracht verplaatst alle tekstbestanden (*.txt) in de huidige directory (weergegeven door een punt(.)) naar de directory C:\Logs.

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

Voorbeeld 4: Verplaats alle bestanden met een opgegeven extensie recursief van de huidige directory naar een andere directory

Deze opdracht verplaatst alle tekstbestanden van de huidige directory en alle subdirectories recursief naar de directory “C:TextFiles”.

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

Dit commando gebruikt het cmdlet Get-ChildItem om alle child items in de huidige directory (weergegeven door de punt) en de submappen op te halen die een “.Het gebruikt de parameter Recurse om het ophalen recursief te maken en de parameter Include om het ophalen te beperken tot “.txt”-bestanden.

De pijplijnoperator (|) zendt de resultaten van dit commando naar Move-Item, die de tekstbestanden verplaatst naar de directory “TextFiles”.

Als de bestanden die naar “C:\Textfiles” moeten worden verplaatst dezelfde naam hebben, geeft Move-Item een fout weer en gaat verder, maar verplaatst slechts één bestand met elke naam naar “C:\Textfiles”. De andere bestanden blijven in hun oorspronkelijke directory’s.

Als de directory “Textfiles” (of een ander element van het bestemmingspad) niet bestaat, mislukt de opdracht. De ontbrekende directory wordt niet voor u gemaakt, zelfs niet als u de parameter Force gebruikt.Move-Item verplaatst het eerste item naar een bestand met de naam “Textfiles” en geeft vervolgens een fout weer waarin wordt uitgelegd dat het bestand al bestaat.

Ook verplaatst Get-ChildItem standaard geen verborgen bestanden.Om verborgen bestanden te verplaatsen, gebruikt u de parameter Force met Get-ChildItem.

Note

In Windows PowerShell 2.0, wanneer u de parameter Recurse van het cmdlet Get-ChildItem gebruikt, moet de waarde van de parameter Path een container zijn.Gebruik de parameter Include om het filter voor de extensie .txt-bestandsnaam(Get-ChildItem -Path .\* -Include *.txt -Recurse | Move-Item -Destination C:\TextFiles) op te geven.

Voorbeeld 5: Registersleutels en -waarden naar een andere sleutel verplaatsen

Deze opdracht verplaatst de registersleutels en -waarden binnen de registersleutel “MyCompany” inHKLM\Software naar de sleutel “MyNewCompany”.Het jokerteken (*) geeft aan dat de inhoud van de sleutel “MyCompany” moet worden verplaatst, niet de sleutel zelf. In deze opdracht zijn de optionele parameternamen Pad en Bestemming weggelaten.

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

Voorbeeld 6: Verplaats een directory en de inhoud ervan naar een subdirectory van de opgegeven directory

Deze opdracht verplaatst de directory “Logs” (en de inhoud ervan) naar de directory “Logs”.

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

De parameter LiteralPath wordt gebruikt in plaats van Path, omdat de oorspronkelijke directorynaam haakjes links en haakjes rechts bevat (“”). Het pad staat ook tussen enkele aanhalingstekens (‘ ‘), zodat het backtick-symbool (`) niet verkeerd wordt geïnterpreteerd.

De parameter Destination heeft geen letterlijk pad nodig, omdat de Destination variabele ook tussen enkele aanhalingstekens moet staan, omdat deze haakjes bevat die verkeerd geïnterpreteerd kunnen worden.

Parameters

-Confirm

Vraagt u om bevestiging voordat u het cmdlet uitvoert.

Type: SwitchParameter
Aliassen: cf
Positie: Naam
Afwijkwaarde: Valse
Accepteer pijplijninvoer: False
Accept wildcard characters: False
-Credential

Note

Deze parameter wordt niet ondersteund door providers die met PowerShell zijn geïnstalleerd.Gebruik Invoke-Command om u als een andere gebruiker voor te doen, of om uw referenties te verhogen wanneer u dit cmdlet uitvoert.

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

Specifieer het pad naar de locatie waar de items worden verplaatst.De standaardwaarde is de huidige directory.Jokertekens zijn toegestaan, maar het resultaat moet een enkele locatie opgeven.

Om de naam te wijzigen van het item dat wordt verplaatst, geeft u een nieuwe naam op in de waarde van de parameter Bestemming.

Type: String
Position: 1
Default value: Current directory
Accept pipeline input: True
Accept wildcard characters: True
-Exclude

Specifieert, als een string array, een item of items die dit cmdlet uitsluit in de operatie. De waarde van deze parameter kwalificeert de Path parameter. Voer een pad element of patroon in, zoals*.txt. Jokertekens zijn toegestaan. De parameter Uitsluiten is alleen effectief wanneer het commando de inhoud van een item bevat, zoals C:\Windows\*, waarbij het jokerteken de inhoud van de directory C:\Windows aangeeft.

Type: String
Positie: Naam
Voorkeurwaarde: None
Accepteer invoer via pijplijn: False
Accepteer jokertekens: True
-Filter

Specificeert een filter om de parameter Pad te kwalificeren. De FileSystem-provider is de enige geïnstalleerde PowerShell-provider die het gebruik van filters ondersteunt. U kunt de syntaxis voor de FileSystem-filtertaal vinden in about_Wildcards.Filters zijn efficiënter dan andere parameters, omdat de provider ze toepast wanneer de cmdlet de objecten ophaalt in plaats van dat PowerShell de objecten filtert nadat ze zijn opgehaald.

Type: String
Position: Naam
Afwijkwaarde: Neen
Accepteer invoer pijplijn: False
Accept wildcard characters: True
-Force

Dwingt de opdracht uit te voeren zonder de gebruiker om bevestiging te vragen.De uitvoering varieert van provider tot provider. Zie voor meer informatie about_Providers.

Type: SwitchParameter
Positie: Naam
Afwijkwaarde: False
Accepteer pijplijninvoer: False
Accepteer wildcard tekens: False
-Include

Specificeert, als een string array, een item of items die dit cmdlet in de operatie opneemt. De waarde van deze parameter kwalificeert de Path parameter. Voer een pad element of patroon in, zoals"*.txt". Jokertekens zijn toegestaan. De parameter Include is alleen effectief wanneer het commando de inhoud van een item bevat, zoals C:\Windows\*, waarbij het jokerteken de inhoud van de directory C:\Windows aangeeft.

Type: String
Positie: Naam
Voorkeurwaarde: None
Accepteer invoer via pijplijn: False
Accepteer jokertekens: True
-LiteralPath

Specificeert een pad naar een of meer locaties. De waarde van LiteralPath wordt precies zo gebruikt als het wordt getypt. Er worden geen tekens geïnterpreteerd als jokertekens. Als het pad escape-tekens bevat, zet u het tussen enkele aanhalingstekens. Enkele aanhalingstekens vertellen PowerShell om geen tekens te interpreteren als escape sequences.

Voor meer informatie, zie about_Quoting_Rules.

Type: String
Aliassen: PSPath, LP
Positie: Named
Default value: None
Accept pipeline input: True
Accept wildcard characters: False
-PassThru

Retourneert een object dat het item vertegenwoordigt waarmee u werkt.Standaard genereert dit cmdlet geen uitvoer.

Type: SwitchParameter
Positie: Naam
Afwijkende waarde: Valse
Accepteer invoer via pijplijn: False
Accepteer jokertekens: False
-Path

Specificeert het pad naar de huidige locatie van de items.De standaardwaarde is de huidige directory.Jokertekens zijn toegestaan.

Type: String
Positie: 0
Default waarde: Current directory
Accepteer invoer via pijplijn: True
Accept wildcard characters: True
-WhatIf

Geeft aan wat er zou gebeuren als het cmdlet wordt uitgevoerd.Het cmdlet wordt niet uitgevoerd.

Type: SwitchParameter
Aliassen: wi
Positie: Naam
Afwijkwaarde: Valse
Accepteer invoer pijplijn: False
Accept wildcard characters: False

Inputs

String

Je kunt een string die een pad bevat naar dit cmdlet pijpen.

Outputs

None of een object dat het verplaatste item weergeeft

Wanneer u de parameter PassThru gebruikt, genereert dit cmdlet een object dat het verplaatste item weergeeft.Anders genereert dit cmdlet geen uitvoer.

Notes

  • Dit cmdlet zal bestanden verplaatsen tussen stations die worden ondersteund door dezelfde provider, maar het zal alleen mappen verplaatsen binnen hetzelfde station.
  • Omdat een Move-Item commando de eigenschappen, inhoud, en child items van een item verplaatst, zijn alle verhuizingen standaard recursief.
  • Dit cmdlet is ontworpen om te werken met de gegevens die door elke provider worden aangeboden.Typ Get-PSProvider voor een lijst van providers die beschikbaar zijn in uw sessie. Zie about_Providers voor meer informatie.
  • Clear-Item
  • Copy-Item
  • Get-Item
  • Invoke-Item
  • New-Item
  • Remove-Item
  • Rename-Item
  • Set-Item
  • about_Providers

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.