Move-Item
Flyttar ett objekt från en plats till en annan.
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
Cmdleten Move-Item
flyttar ett objekt, inklusive dess egenskaper, innehåll och underordnade objekt, från en plats till en annan plats. Platserna måste stödjas av samma provider.
Den kan till exempel flytta en fil eller underkatalog från en katalog till en annan eller flytta en registerundernyckel från en nyckel till en annan. När du flyttar ett objekt läggs det till på den nya platsen och tas bort från dess ursprungliga plats.
Exempel
Exempel 1: Flytta en fil till en annan katalog och byt namn på den
Det här kommandot flyttar Test.txt
filen från C:
enheten till E:\Temp
katalogen och byter namn på den från test.txt
till tst.txt
.
Move-Item -Path C:\test.txt -Destination E:\Temp\tst.txt
Exempel 2: Flytta en katalog och dess innehåll till en annan katalog
Det här kommandot flyttar C:\Temp
katalogen och dess innehåll till C:\Logs
katalogen.
Katalogen Temp
och alla dess underkataloger och filer visas sedan i Logs
katalogen.
Move-Item -Path C:\Temp -Destination C:\Logs
Exempel 3: Flytta alla filer i ett angivet tillägg från den aktuella katalogen till en annan katalog
Det här kommandot flyttar alla textfiler (*.txt
) i den aktuella katalogen (representeras av en punkt (.
)) till C:\Logs
katalogen.
Move-Item -Path .\*.txt -Destination C:\Logs
Exempel 4: Flytta rekursivt alla filer i ett angivet tillägg från den aktuella katalogen till en annan katalog
Det här kommandot flyttar alla textfiler från den aktuella katalogen och alla underkataloger rekursivt till C:\TextFiles
katalogen.
Get-ChildItem -Path ".\*.txt" -Recurse | Move-Item -Destination "C:\TextFiles"
Kommandot använder cmdleten Get-ChildItem
för att hämta alla underordnade objekt i den aktuella katalogen (representeras av punkten (.
)) och dess underkataloger som har filnamnstillägget *.txt
. Den använder parametern Recurse för att göra hämtningen rekursiv och parametern Include för att begränsa hämtningen till *.txt
filer.
Pipelineoperatorn (|
) skickar resultatet av det här kommandot till Move-Item
, som flyttar textfilerna TextFiles
till katalogen.
Om filer som ska flyttas för att C:\Textfiles
ha samma namn Move-Item
visas ett fel och fortsätter, men den flyttar bara en fil med varje namn till C:\Textfiles
. De andra filerna finns kvar i sina ursprungliga kataloger.
Om katalogen Textfiles
(eller något annat element i målsökvägen) inte finns misslyckas kommandot. Den saknade katalogen skapas inte åt dig, även om du använder force-parametern. Move-Item
flyttar det första objektet till en fil som heter Textfiles
och visar sedan ett fel som förklarar att filen redan finns.
Som standard Get-ChildItem
flyttas inte heller dolda filer. Om du vill flytta dolda filer använder du force-parametern med Get-ChildItem
.
Kommentar
I Windows PowerShell 2.0 måste värdet för parametern Path vara en container när du använder parametern Get-ChildItem
Recurse för cmdleten. Använd parametern Inkludera för att ange filnamnstilläggsfiltret *.txt
(Get-ChildItem -Path .\* -Include *.txt -Recurse | Move-Item -Destination C:\TextFiles
).
Exempel 5: Flytta registernycklar och -värden till en annan nyckel
Det här kommandot flyttar registernycklarna och värdena i registernyckeln MyCompany
HKLM\Software
till MyNewCompany
nyckeln. Jokertecknet (*
) anger att innehållet i MyCompany
nyckeln ska flyttas, inte själva nyckeln. I det här kommandot utelämnas de valfria sökvägs - och målparameternamnen .
Move-Item "HKLM:\software\mycompany\*" "HKLM:\software\mynewcompany"
Exempel 6: Flytta en katalog och dess innehåll till en underkatalog till den angivna katalogen
Det här kommandot flyttar Logs[Sept`06]
katalogen (och dess innehåll) till Logs[2006]
katalogen.
Move-Item -LiteralPath 'Logs[Sept`06]' -Destination 'Logs[2006]'
Parametern LiteralPath används i stället för Sökväg, eftersom det ursprungliga katalognamnet innehåller vänster hakparentes och högerparentestecken ([
och ]
). Sökvägen omges också av enkla citattecken ('
), så att backtick-symbolen (`
) inte misstolkas.
Målparametern måste också omges av enkla citattecken eftersom den innehåller hakparenteser som kan feltolkas.
Parametrar
-Confirm
Uppmanar dig att bekräfta innan du kör cmdleten.
Typ: | SwitchParameter |
Alias: | cf |
Position: | Named |
Standardvärde: | False |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Credential
Kommentar
Den här parametern stöds inte av några leverantörer som är installerade med PowerShell. Om du vill personifiera en annan användare eller höja dina autentiseringsuppgifter när du kör den här cmdleten använder du Invoke-Command.
Typ: | PSCredential |
Position: | Named |
Standardvärde: | Current user |
Obligatorisk: | False |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-Destination
Anger sökvägen till den plats där objekten flyttas. Standardvärdet är den aktuella katalogen. Jokertecken är inte tillåtna.
Om du vill byta namn på objektet som flyttas anger du ett nytt namn i värdet för målparametern.
Typ: | String |
Position: | 1 |
Standardvärde: | Current directory |
Obligatorisk: | False |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | True |
-Exclude
Anger, som en strängmatris, ett objekt eller objekt som den här cmdleten exkluderar i åtgärden. Värdet för den här parametern kvalificerar parametern Path . Ange ett sökvägselement eller mönster, till exempel *.txt
. Jokertecken tillåts. Parametern Exkludera gäller endast när kommandot innehåller innehållet i ett objekt, till exempel C:\Windows\*
, där jokertecknet anger innehållet i C:\Windows
katalogen.
Typ: | String[] |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | True |
-Filter
Anger ett filter för att kvalificera parametern Sökväg . FileSystem-providern är den enda installerade PowerShell-providern som stöder användning av filter. Du hittar syntaxen för filterspråket FileSystem i about_Wildcards. Filter är effektivare än andra parametrar eftersom providern tillämpar dem när cmdleten hämtar objekten i stället för att Låta PowerShell filtrera objekten när de har hämtats.
Typ: | String |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | True |
-Force
Tvingar kommandot att köras utan att be om användarbekräftelse. Implementeringen varierar från leverantör till leverantör. Mer information finns i about_Providers.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | False |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Include
Anger, som en strängmatris, ett objekt eller objekt som den här cmdleten innehåller i åtgärden. Värdet för den här parametern kvalificerar parametern Path . Ange ett sökvägselement eller mönster, till exempel *.txt
. Jokertecken tillåts. Parametern Include är endast effektiv när kommandot innehåller innehållet i ett objekt, till exempel C:\Windows\*
, där jokertecknet anger innehållet i C:\Windows
katalogen.
Typ: | String[] |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | True |
-LiteralPath
Anger en sökväg till en eller flera platser. Värdet för LiteralPath används exakt som det skrivs. Inga tecken tolkas som jokertecken. Om sökvägen innehåller escape-tecken omger du den med enkla citattecken ('
). Enkla citattecken gör att PowerShell inte tolkar några tecken som escape-sekvenser.
Mer information finns i about_Quoting_Rules.
Typ: | String[] |
Alias: | PSPath, LP |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-PassThru
Returnerar ett objekt som representerar det flyttade objektet. Som standard genererar den här cmdleten inga utdata.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | False |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Path
Anger sökvägen till den aktuella platsen för objekten. Standardvärdet är den aktuella katalogen. Jokertecken tillåts.
Typ: | String[] |
Position: | 0 |
Standardvärde: | Current directory |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | True |
-WhatIf
Visar vad som skulle hända om cmdleten kördes. Cmdleten körs inte.
Typ: | SwitchParameter |
Alias: | wi |
Position: | Named |
Standardvärde: | False |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
Indata
Du kan skicka en sträng som innehåller en sökväg till den här cmdleten.
Utdata
None
Som standard returnerar den här cmdleten inga utdata.
När du använder parametern PassThru returnerar den här cmdleten ett objekt som representerar det flyttade objektet.
Kommentarer
PowerShell innehåller följande alias för Move-Item
:
Alla plattformar:
mi
move
Windows:
mv
Den här cmdleten flyttar filer mellan enheter som stöds av samma provider, men den flyttar endast kataloger inom samma enhet.
Eftersom ett
Move-Item
kommando flyttar egenskaper, innehåll och underordnade objekt i ett objekt är alla flyttningar rekursiva som standard.Den här cmdleten är utformad för att fungera med data som exponeras av alla leverantörer. Om du vill visa en lista över tillgängliga leverantörer i sessionen skriver du
Get-PSProvider
. Mer information finns i about_Providers.