Move-Item
Hiermee verplaatst u een item van de ene locatie naar de andere.
Syntax
Move-Item
[-Path] <String[]>
[[-Destination] <String>]
[-Force]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-PassThru]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[<CommonParameters>]
Move-Item
-LiteralPath <String[]>
[[-Destination] <String>]
[-Force]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-PassThru]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[<CommonParameters>]
Description
Met de Move-Item
cmdlet wordt een item, inclusief de eigenschappen, inhoud en onderliggende items, van de ene locatie naar een andere locatie verplaatst.
De locaties moeten worden ondersteund door dezelfde provider.
Het kan bijvoorbeeld een bestand of submap van de ene map naar de andere verplaatsen of een registersubsleutel van de ene sleutel naar de andere verplaatsen.
Wanneer u een item verplaatst, wordt het toegevoegd aan de nieuwe locatie en verwijderd van de oorspronkelijke locatie.
Voorbeelden
Voorbeeld 1: Een bestand naar een andere map verplaatsen en de naam ervan wijzigen
Met deze opdracht verplaatst u het bestand 'Test.txt' van het C:
station naar de map 'E:\Temp' en wijzigt u de naam van 'test.txt' in 'tst.txt'.
Move-Item -Path C:\test.txt -Destination E:\Temp\tst.txt
Voorbeeld 2: Een map en de inhoud ervan naar een andere map verplaatsen
Met deze opdracht verplaatst u de map C:\Temp en de inhoud ervan naar de map C:\Logs. De map Temp en alle submappen en bestanden worden vervolgens weergegeven in de map Logboeken.
Move-Item -Path C:\Temp -Destination C:\Logs
Voorbeeld 3: alle bestanden van een opgegeven extensie van de huidige map naar een andere map verplaatsen
Met deze opdracht worden alle tekstbestanden ('*.txt') in de huidige map verplaatst (vertegenwoordigd door een punt ('.')) naar de map C:\Logs.
Move-Item -Path .\*.txt -Destination C:\Logs
Voorbeeld 4: alle bestanden van een opgegeven extensie recursief verplaatsen van de huidige map naar een andere map
Met deze opdracht worden alle tekstbestanden van de huidige map en alle submappen recursief naar de map C:\TextFiles verplaatst.
De opdracht gebruikt de Get-ChildItem
cmdlet voor het ophalen van alle onderliggende items in de huidige map (vertegenwoordigd door de punt [.]) en de submappen met de bestandsnaamextensie '.txt'. De parameter Recurse wordt gebruikt om het ophalen recursief te maken en de parameter Opnemen om het ophalen te beperken tot.txt-bestanden .
De pijplijnoperator (|
) verzendt de resultaten van deze opdracht naar Move-Item
, waarmee de tekstbestanden worden verplaatst naar de map 'TextFiles'.
Als bestanden die moeten worden verplaatst naar 'C:\Textfiles' dezelfde naam hebben, Move-Item
wordt een fout weergegeven en wordt doorgegaan, maar wordt slechts één bestand met elke naam verplaatst naar 'C:\Textfiles'.
De andere bestanden blijven in de oorspronkelijke mappen staan.
Als de map Tekstbestanden (of een ander element van het doelpad) niet bestaat, mislukt de opdracht.
De ontbrekende map 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 Tekstbestanden en geeft vervolgens een fout weer waarin wordt uitgelegd dat het bestand al bestaat.
Ook verplaatst standaard Get-ChildItem
geen verborgen bestanden.
Als u verborgen bestanden wilt verplaatsen, gebruikt u de parameter Forceren met Get-ChildItem
.
Opmerking: wanneer u in Windows PowerShell 2.0 de parameter Recurse van de Get-ChildItem
cmdlet gebruikt, moet de waarde van de path-parameter een container zijn.
Gebruik de parameter Include om het .txt bestandsnaamextensiefilter (Get-ChildItem -Path .\* -Include *.txt -Recurse | Move-Item -Destination C:\TextFiles
) op te geven.
Get-ChildItem -Path ".\*.txt" -Recurse | Move-Item -Destination "C:\TextFiles"
Voorbeeld 5: Registersleutels en -waarden verplaatsen naar een andere sleutel
Met deze opdracht worden de registersleutels en -waarden in de registersleutel MyCompany in HKLM\Software verplaatst naar de sleutel MyNewCompany. Het jokerteken ('*') geeft aan dat de inhoud van de sleutel 'Mijnbedrijf' moet worden verplaatst, niet de sleutel zelf. In deze opdracht worden de optionele parameternamen Pad en Doel weggelaten.
Move-Item "HKLM:\software\mycompany\*" "HKLM:\software\mynewcompany"
Voorbeeld 6: Een map en de inhoud ervan verplaatsen naar een submap van de opgegeven map
Met deze opdracht wordt de map Logs[Sept'06] (en de inhoud ervan) verplaatst naar de map Logs[2006].
De parameter LiteralPath wordt gebruikt in plaats van Pad, omdat de oorspronkelijke mapnaam een haakje links en een haakje rechts ("[" en "]") bevat. Het pad staat ook tussen enkele aanhalingstekens (' '), zodat het backticksymbool (') niet verkeerd wordt geïnterpreteerd.
Voor de parameter Destination is geen letterlijk pad vereist, omdat de doelvariabele ook tussen enkele aanhalingstekens moet worden geplaatst, omdat deze vierkante haken bevat die verkeerd kunnen worden geïnterpreteerd.
Move-Item -LiteralPath 'Logs[Sept`06]' -Destination 'Logs[2006]'
Parameters
-Confirm
Hiermee wordt u gevraagd om bevestiging voordat u de cmdlet uitvoert.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Notitie
Deze parameter wordt niet ondersteund door providers die zijn geïnstalleerd met PowerShell. Als u een andere gebruiker wilt imiteren of uw referenties wilt verhogen bij het uitvoeren van deze cmdlet, gebruikt u Invoke-Command.
Type: | PSCredential |
Position: | Named |
Default value: | Current user |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Destination
Hiermee geeft u het pad naar de locatie waar de items worden verplaatst. De standaardwaarde is de huidige map. Jokertekens zijn toegestaan, maar het resultaat moet één locatie opgeven.
Als u de naam van het item wilt wijzigen dat wordt verplaatst, geeft u een nieuwe naam op in de waarde van de doelparameter.
Type: | String |
Position: | 1 |
Default value: | Current directory |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-Exclude
Hiermee geeft u, als een tekenreeksmatrix, een item of items op die door deze cmdlet worden uitgesloten van de bewerking. De waarde van deze parameter komt in aanmerking voor de path-parameter . Voer een padelement of -patroon in, zoals *.txt. Jokertekens zijn toegestaan.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Filter
Hiermee geeft u een filter in de indeling of taal van de provider. De waarde van deze parameter komt in aanmerking voor de path-parameter .
De syntaxis van het filter, inclusief het gebruik van jokertekens, is afhankelijk van de provider. 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: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Force
Hiermee dwingt u de opdracht uit te voeren zonder om bevestiging van de gebruiker te vragen. De implementatie verschilt van provider tot provider. Zie about_Providers voor meer informatie.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Include
Hiermee geeft u, als een tekenreeksmatrix, een item of items op die met deze cmdlet in de bewerking worden verplaatst. De waarde van deze parameter komt in aanmerking voor de path-parameter . Voer een padelement of -patroon in, zoals *.txt. Jokertekens zijn toegestaan.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-LiteralPath
Hiermee geeft u het pad naar de huidige locatie van de items. In tegenstelling tot de path-parameter wordt de waarde van LiteralPath exact gebruikt zoals deze is getypt. Er worden geen tekens geïnterpreteerd als jokertekens. Als het pad escapetekens bevat, plaatst u het tussen enkele aanhalingstekens. Enkele aanhalingstekens vertellen PowerShell dat geen tekens als escape-reeksen worden geïnterpreteerd.
Type: | String[] |
Aliases: | PSPath |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-PassThru
Retourneert een object dat het item vertegenwoordigt waarmee u werkt. Deze cmdlet genereert standaard geen uitvoer.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
Hiermee geeft u het pad naar de huidige locatie van de items. De standaardwaarde is de huidige map. Jokertekens zijn toegestaan.
Type: | String[] |
Position: | 0 |
Default value: | Current directory |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-UseTransaction
Hiermee wordt de opdracht opgenomen in de actieve transactie. Deze parameter is alleen geldig wanneer een transactie wordt uitgevoerd. Zie about_Transactions voor meer informatie.
Type: | SwitchParameter |
Aliases: | usetx |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Hiermee wordt weergegeven wat er zou gebeuren als u de cmdlet uitvoert. De cmdlet wordt niet uitgevoerd.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Invoerwaarden
U kunt een tekenreeks doorsnijden die een pad naar deze cmdlet bevat.
Uitvoerwaarden
None or an object representing the moved item.
Wanneer u de parameter PassThru gebruikt, genereert deze cmdlet een object dat het verplaatste item vertegenwoordigt. Anders genereert deze cmdlet geen uitvoer.
Notities
Met deze cmdlet worden bestanden verplaatst tussen stations die worden ondersteund door dezelfde provider, maar worden mappen alleen binnen hetzelfde station verplaatst.
Omdat met een Move-Item
opdracht de eigenschappen, inhoud en onderliggende items van een item worden verplaatst, zijn alle verplaatsingen standaard recursief.
Deze cmdlet is ontworpen om te werken met de gegevens die door elke provider worden weergegeven.
Als u de providers wilt weergeven die beschikbaar zijn in uw sessie, typt u Get-PSProvider
.
Zie about_Providers voor meer informatie.