Verschiebt ein Element von einem Speicherort an einen anderen Speicherort. (Move-Item)
NAMEMove-ItemÜBERSICHTVerschiebt ein Element von einem Speicherort an einen anderen Speicherort.SYNTAXMove-Item [-LiteralPath] <string[]> [[-Destination] <string>] [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters>] Move-Item [-Path] <string[]> [[-Destination] <string>] [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters>]BESCHREIBUNGMit dem Cmdlet "Move-Item" wird ein Element einschließlich seiner Eigenschaften, seines Inhalts und seiner untergeordneten Elemente von einem Speicherort an einen anderen Speicherort verschoben. Die Speicherorte müssen von ein und demselben Anbieter unterstützt werden. Beispielsweise kann eine Datei oder ein Unterverzeichnis von einem Verzeichnis in ein anderes oder ein Registrierungsunterschlüssel von einem Schlüssel in einen anderen verschoben werden. Beim Verschieben eines Elements wird dieses am neuen Speicherort hinzugefügt und an seinem ursprünglichen Speicherort gelöscht.PARAMETER-Credential <PSCredential> Gibt ein Benutzerkonto an, das über die Berechtigung zum Ausführen dieser Aktion verfügt. Der Standardwert ist der aktuelle Benutzer. Geben Sie einen Benutzernamen ein, z. B. "User01" oder "Domain01\User01", oder geben Sie ein PSCredential-Objekt ein, z. B. ein vom Cmdlet "Get-Credential" generiertes Objekt. Wenn Sie einen Benutzernamen eingeben, werden Sie zur Eingabe eines Kennworts aufgefordert. Dieser Parameter wird nicht von mit Windows PowerShell installierten Anbietern unterstützt. Erforderlich? false Position? named Standardwert Pipelineeingaben akzeptieren?true (ByPropertyName) Platzhalterzeichen akzeptieren?false -Destination <string> Gibt den Pfad zum Speicherort an, an den die Elemente verschoben werden. Der Standardwert ist das aktuelle Verzeichnis. Platzhalter sind zulässig, das Ergebnis muss jedoch ein einziger Speicherort sein. Um das verschobene Element umzubenennen, geben Sie im Wert des Destination-Parameters einen neuen Namen an. Erforderlich? false Position? 2 Standardwert Pipelineeingaben akzeptieren?true (ByPropertyName) Platzhalterzeichen akzeptieren?false -Exclude <string[]> Lässt die angegebenen Elemente aus. Der Path-Parameter wird durch den Wert dieses Parameters qualifiziert. Geben Sie ein Pfadelement oder -muster wie "*.txt" ein. Platzhalter sind zulässig. Erforderlich? false Position? named Standardwert Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -Filter <string> Gibt einen Filter im Format oder in der Sprache des Anbieters an. Der Path-Parameter wird durch den Wert dieses Parameters qualifiziert. Die Syntax des Filters einschließlich der Verwendung von Platzhaltern ist vom Anbieter abhängig. Filter sind effizienter als andere Parameter, da sie beim Abrufen der Objekte vom Anbieter angewendet werden und die Objekte nicht erst nach dem Abrufen von Windows PowerShell gefiltert werden. Erforderlich? false Position? named Standardwert Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -Force [<SwitchParameter>] Ermöglicht dem Cmdlet das Verschieben eines Elements, durch das ein vorhandenes schreibgeschütztes Element überschrieben wird. Die Implementierung unterscheidet sich bei den einzelnen Anbietern. Weitere Informationen finden Sie unter "about_Providers". Auch bei Verwendung des Force-Parameters kann das Cmdlet keine Sicherheitseinschränkungen außer Kraft setzen. Erforderlich? false Position? named Standardwert Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -Include <string[]> Verschiebt nur die angegebenen Elemente. Der Path-Parameter wird durch den Wert dieses Parameters qualifiziert. Geben Sie ein Pfadelement oder -muster wie "*.txt" ein. Platzhalter sind zulässig. Erforderlich? false Position? named Standardwert Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -LiteralPath <string[]> Gibt den Pfad zum aktuellen Speicherort der Elemente an. Im Gegensatz zu "Path" wird der Wert von "LiteralPath" genau so verwendet, wie er eingegeben wurde. Es werden keine Zeichen als Platzhalter interpretiert. Wenn der Pfad Escapezeichen enthält, müssen Sie ihn in einfache Anführungszeichen einschließen. Einfache Anführungszeichen veranlassen Windows PowerShell, Zeichen nicht als Escapesequenzen zu interpretieren. Erforderlich? true Position? 1 Standardwert Pipelineeingaben akzeptieren?true (ByPropertyName) Platzhalterzeichen akzeptieren?false -PassThru [<SwitchParameter>] Übergibt ein Objekt, das das Element darstellt, an die Pipeline. Standardmäßig wird von diesem Cmdlet keine Ausgabe generiert. Erforderlich? false Position? named Standardwert Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -Path <string[]> Gibt den Pfad zum aktuellen Speicherort der Elemente an. Der Standardwert ist das aktuelle Verzeichnis. Platzhalter sind zulässig. Erforderlich? true Position? 1 Standardwert Pipelineeingaben akzeptieren?true (ByValue, ByPropertyName) Platzhalterzeichen akzeptieren?false -Confirm [<SwitchParameter>] Fordert Sie vor der Ausführung des Befehls zur Bestätigung auf. Erforderlich? false Position? named Standardwert Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -WhatIf [<SwitchParameter>] Beschreibt die Auswirkungen einer Ausführung des Befehls, ohne den Befehl tatsächlich auszuführen. Erforderlich? false Position? named Standardwert Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -UseTransaction [<SwitchParameter>] Schließt den Befehl in die aktive Transaktion ein. Dieser Parameter ist nur gültig, wenn eine Transaktion ausgeführt wird. Weitere Informationen finden Sie unter "about_Transactions". Erforderlich? false Position? named Standardwert Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false <CommonParameters> Dieses Cmdlet unterstützt folgende allgemeine Parameter: "Verbose", "Debug", "ErrorAction", "ErrorVariable", "WarningAction", "WarningVariable", "OutBuffer" und "OutVariable". Weitere Informationen erhalten Sie mit dem Befehl "get-help about_commonparameters".EINGABENSystem.String Sie können eine Zeichenfolge mit einem Pfad über die Pipeline an Move-Item übergeben.AUSGABENKeiner oder ein Objekt, das das verschobene Element darstellt. Wenn Sie den Passthru-Parameter verwenden, generiert Move-Item ein Objekt, das das verschobene Element darstellt. Andernfalls wird von diesem Cmdlet keine Ausgabe generiert.HINWEISEMit "Move-Item" werden Dateien zwischen Laufwerken verschoben, die vom gleichen Anbieter unterstützt werden, Verzeichnisse werden jedoch nur auf demselben Laufwerk verschoben. Da mit dem Befehl "Move-Item" die Eigenschaften, der Inhalt und die untergeordneten Elemente eines Elements verschoben werden, sind alle Verschiebevorgänge standardmäßig rekursiv. Sie können auch über die integrierten Aliase "move", "mv" und "mi" auf Move-Item verweisen. Weitere Informationen finden Sie unter "about_Aliases". Das Cmdlet "Move-Item" ist für die Verwendung mit Daten konzipiert, die von beliebigen Anbietern verfügbar gemacht werden. Um die in der Sitzung verfügbaren Anbieter aufzuführen, geben Sie "Get-PsProvider" ein. Weitere Informationen finden Sie unter "about_Providers".Beispiele
BEISPIEL 1C:\PS>move-item -path C:\test.txt -destination E:\Temp\tst.txt Beschreibung ----------- Mit diesem Befehl wird die Datei "test.txt" von Laufwerk "C:" in das Verzeichnis "E:\Temp" verschoben und von "test.txt" in "tst.txt" umbenannt.BEISPIEL 2C:\PS>move-item -path C:\Temp -destination C:\Logs Beschreibung ----------- Mit diesem Befehl wird das Verzeichnis "C:\Temp" mit seinem Inhalt in das Verzeichnis "C:\Logs" verschoben. Das Verzeichnis "Temp" befindet sich dann mit allen Unterverzeichnissen und Dateien im Verzeichnis "Logs".BEISPIEL 3C:\PS>move-item -path .\*.txt -destination C:\Logs Beschreibung ----------- Mit diesem Befehl werden alle Textdateien ("*.txt") im aktuellen Verzeichnis (dargestellt durch einen Punkt (.)) in das Verzeichnis "C:\Logs" verschoben.BEISPIEL 4C:\PS>get-childitem -path . -recurse -include *.txt | move-item -destination C:\TextFiles Beschreibung ----------- Mit diesem Befehl werden alle Textdateien aus dem aktuellen Verzeichnis und rekursiv aus allen Unterverzeichnissen in das Verzeichnis "C:\TextFiles" verschoben. Im Befehl werden mit dem Cmdlet "Get-ChildItem" alle untergeordneten Elemente im aktuellen Verzeichnis (dargestellt durch den Punkt [.]) und dessen Unterverzeichnissen abgerufen, die die Dateinamenerweiterung "*.txt" aufweisen. Mit dem Recurse-Parameter wird ein rekursiver Abrufvorgang festgelegt, und mit dem Include-Parameter wird der Abrufvorgang auf Dateien im Format "*.txt" beschränkt. Mit dem Pipelineoperator (|) werden die Ergebnisse dieses Befehls an Move-Item übergeben, mit dem die Textdateien in das Verzeichnis "C:\TextFiles" verschoben werden. Wenn nach "C:\TextFiles" verschobene Dateien denselben Namen aufweisen, wird von Move-Item ein Fehler angezeigt und der Vorgang fortgesetzt, es wird jedoch nur eine Datei mit dem betreffenden Namen in das Verzeichnis "C:\TextFiles" verschoben. Die anderen Dateien verbleiben in ihren ursprünglichen Verzeichnissen. Wenn das Verzeichnis "Textfiles" (oder ein anderes Element des Zielpfads) nicht vorhanden ist, tritt bei dem Befehl ein Fehler auf. Das fehlende Verzeichnis wird nicht erstellt, auch wenn Sie den Force-Parameter verwenden. Move-Item verschiebt das erste Element in die eine Datei mit dem Namen "Textfiles" und zeigt dann einen Fehler mit der Meldung an, dass die Datei bereits vorhanden ist. Zudem werden mit Get-ChildItem standardmäßig keine versteckten Dateien verschoben. Um versteckte Dateien zu verschieben, verwenden Sie Get-ChildItem mit dem Force-Parameter.BEISPIEL 5C:\PS>move-item hklm:\software\mycompany\* hklm:\software\mynewcompany Beschreibung ----------- Mit diesem Befehl werden die Registrierungsschlüssel und -werte im Registrierungsschlüssel "MyCompany" unter "HKLM\Software" in den Schlüssel "MyNewCompany" verschoben. Das Platzhalterzeichnen (*) gibt an, dass der Inhalt des Schlüssels "MyCompany" und nicht der Schlüssel selbst verschoben werden soll. In diesem Befehl wurden die optionalen Parameternamen "Path" und "Destination" ausgelassen.BEISPIEL 6C:\PS>move-item -literalpath 'Logs[Sept`06]' -destination 'Logs[2006]' Beschreibung ----------- Mit diesem Befehl wird das Verzeichnis "Logs[Sept`06]" (mit seinem Inhalt) in das Verzeichnis "Logs[2006]" verschoben. Der LiteralPath-Parameter wird anstelle von "Path" verwendet, weil der ursprüngliche Verzeichnisname Zeichen für linke und rechte eckige Klammern ("[" und "]") enthält. Zudem wird der Pfad in einfache Anführungszeichen (' ') eingeschlossen, damit das Graviszeichen (`) nicht falsch interpretiert wird. Der Destination-Parameter erfordert keinen literalen Pfad, weil die Variable "Destination" auch in einfache Anführungszeichen eingeschlossen werden muss, da sie eckige Klammern enthält, die ebenfalls falsch interpretiert werden können. VERWANDTE LINKS Online version: http://go.microsoft.com/fwlink/?LinkID=113350 (möglicherweise auf Englisch) about_Providers Clear-Item Get-Item Invoke-Item Set-Item New-Item Remove-Item Rename-Item Copy-Item C:\Windows>powershell get-help Rename-Item -full
Microsoft Windows [Version 10.0.19045.3693]
Copyright (c) 2023 Microsoft Corporation.
ColorConsole [Version 3.7.1000] PowerShell 2.0-Export