Move-Item
Déplace un élément d’un emplacement vers un autre.
Syntaxe
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
L’applet de commande Move-Item
déplace un élément, y compris ses propriétés, son contenu et ses éléments enfants, d’un emplacement à un autre emplacement.
Les emplacements doivent être pris en charge par le même fournisseur.
Par exemple, il peut déplacer un fichier ou un sous-répertoire d’un répertoire vers un autre ou déplacer une sous-clé de Registre d’une clé vers une autre.
Lorsque vous déplacez un élément, il est ajouté au nouvel emplacement et supprimé de son emplacement d’origine.
Exemples
Exemple 1 : Déplacer un fichier vers un autre répertoire et le renommer
Cette commande déplace le fichier «Test.txt» du lecteur C:
vers le répertoire « E :\Temp » et le renomme de «test.txt» en «tst.txt».
Move-Item -Path C:\test.txt -Destination E:\Temp\tst.txt
Exemple 2 : Déplacer un répertoire et son contenu vers un autre répertoire
Cette commande déplace le répertoire « C :\Temp » et son contenu vers le répertoire « C :\Logs ». Le répertoire « Temp », ainsi que tous ses sous-répertoires et fichiers, s’affichent ensuite dans le répertoire « Journaux ».
Move-Item -Path C:\Temp -Destination C:\Logs
Exemple 3 : Déplacer tous les fichiers d’une extension spécifiée du répertoire actif vers un autre répertoire
Cette commande déplace tous les fichiers texte (« *.txt») dans le répertoire actif (représenté par un point ('.')) dans le répertoire « C :\Logs ».
Move-Item -Path .\*.txt -Destination C:\Logs
Exemple 4 : Déplacer de manière récursive tous les fichiers d’une extension spécifiée du répertoire actif vers un autre répertoire
Cette commande déplace tous les fichiers texte du répertoire actif et de tous les sous-répertoires, récursivement, vers le répertoire « C :\TextFiles ».
La commande utilise l’applet de commande Get-ChildItem
pour obtenir tous les éléments enfants du répertoire actif (représentés par le point [.]) et ses sous-répertoires qui ont une extension de nom de fichier «.txt». Il utilise le paramètre Recurse pour rendre la récupération récursive et le paramètre Include pour limiter la récupération aux fichiers «.txt».
L’opérateur de pipeline (|
) envoie les résultats de cette commande à Move-Item
, ce qui déplace les fichiers texte vers le répertoire « TextFiles ».
Si les fichiers à déplacer vers « C :\Textfiles » portent le même nom, Move-Item
affiche une erreur et continue, mais il ne déplace qu’un seul fichier portant chaque nom sur « C :\Textfiles ».
Les autres fichiers restent dans leurs répertoires d’origine.
Si le répertoire « Textfiles » (ou tout autre élément du chemin de destination) n’existe pas, la commande échoue.
Le répertoire manquant n’est pas créé pour vous, même si vous utilisez le paramètre force Move-Item
déplace le premier élément vers un fichier appelé « Textfiles », puis affiche une erreur expliquant que le fichier existe déjà.
Par défaut, Get-ChildItem
ne déplace pas les fichiers masqués.
Pour déplacer des fichiers masqués, utilisez le paramètre force
Remarque : Dans Windows PowerShell 2.0, lors de l’utilisation du paramètre Get-ChildItem -Path .\* -Include *.txt -Recurse | Move-Item -Destination C:\TextFiles
).
Get-ChildItem -Path ".\*.txt" -Recurse | Move-Item -Destination "C:\TextFiles"
Exemple 5 : Déplacer des clés et des valeurs de Registre vers une autre clé
Cette commande déplace les clés et valeurs de Registre dans la clé de Registre « MyCompany » dans « HKLM\Software » vers la clé « MyNewCompany ». Le caractère générique ('*') indique que le contenu de la clé « MyCompany » doit être déplacé, et non pas la clé elle-même. Dans cette commande, le chemin d’accès facultatif et noms de paramètres de destination sont omis.
Move-Item "HKLM:\software\mycompany\*" "HKLM:\software\mynewcompany"
Exemple 6 : Déplacer un répertoire et son contenu vers un sous-répertoire du répertoire spécifié
Cette commande déplace le répertoire « Logs[Sept'06] » (et son contenu) dans le répertoire « Logs[2006] ».
Le paramètre LiteralPath est utilisé au lieu de Chemin d’accès, car le nom du répertoire d’origine inclut les crochets gauche et les crochets droit (« [ » et « ] »). Le chemin est également placé entre guillemets simples (' '), de sorte que le symbole backtick (') n’est pas mal interprété.
Le paramètre Destination ne nécessite pas de chemin littéral, car la variable de destination doit également être placée entre guillemets simples, car elle inclut des crochets qui peuvent être mal interprétés.
Move-Item -LiteralPath 'Logs[Sept`06]' -Destination 'Logs[2006]'
Paramètres
-Confirm
Vous invite à confirmer avant d’exécuter l’applet de commande.
Type: | SwitchParameter |
Alias: | cf |
Position: | Named |
Valeur par défaut: | False |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Credential
Note
Ce paramètre n’est pas pris en charge par les fournisseurs installés avec PowerShell. Pour emprunter l’identité d’un autre utilisateur ou élever vos informations d’identification lors de l’exécution de cette applet de commande, utilisez Invoke-Command.
Type: | PSCredential |
Position: | Named |
Valeur par défaut: | Current user |
Obligatoire: | False |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | False |
-Destination
Spécifie le chemin d’accès à l’emplacement où les éléments sont déplacés. La valeur par défaut est le répertoire actif. Les caractères génériques sont autorisés, mais le résultat doit spécifier un emplacement unique.
Pour renommer l’élément déplacé, spécifiez un nouveau nom dans la valeur du paramètre destination
Type: | String |
Position: | 1 |
Valeur par défaut: | Current directory |
Obligatoire: | False |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | True |
-Exclude
Spécifie, en tant que tableau de chaînes, un élément ou des éléments que cette applet de commande exclut de l’opération. La valeur de ce paramètre qualifie le paramètre Path. Entrez un élément de chemin d’accès ou un modèle, tel que « *.txt». Les caractères génériques sont autorisés.
Type: | String[] |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | True |
-Filter
Spécifie un filtre dans le format ou la langue du fournisseur. La valeur de ce paramètre qualifie le paramètre Path.
La syntaxe du filtre, y compris l’utilisation de caractères génériques, dépend du fournisseur. Les filtres sont plus efficaces que d’autres paramètres, car le fournisseur les applique lorsque l’applet de commande obtient les objets plutôt que de filtrer les objets après leur récupération.
Type: | String |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | True |
-Force
Force l’exécution de la commande sans demander la confirmation de l’utilisateur. L’implémentation varie du fournisseur au fournisseur. Pour plus d’informations, consultez about_Providers.
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | False |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Include
Spécifie, en tant que tableau de chaînes, un élément ou des éléments déplacés par cette applet de commande dans l’opération. La valeur de ce paramètre qualifie le paramètre Path. Entrez un élément de chemin d’accès ou un modèle, tel que « *.txt». Les caractères génériques sont autorisés.
Type: | String[] |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | True |
-LiteralPath
Spécifie le chemin d’accès à l’emplacement actuel des éléments.
Contrairement au paramètre Path
Type: | String[] |
Alias: | PSPath |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | False |
-PassThru
Retourne un objet représentant l’élément avec lequel vous travaillez. Par défaut, cette applet de commande ne génère aucune sortie.
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | False |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Path
Spécifie le chemin d’accès à l’emplacement actuel des éléments. La valeur par défaut est le répertoire actif. Les caractères génériques sont autorisés.
Type: | String[] |
Position: | 0 |
Valeur par défaut: | Current directory |
Obligatoire: | True |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | True |
-UseTransaction
Inclut la commande dans la transaction active. Ce paramètre est valide uniquement lorsqu’une transaction est en cours. Pour plus d’informations, consultez about_Transactions.
Type: | SwitchParameter |
Alias: | usetx |
Position: | Named |
Valeur par défaut: | False |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-WhatIf
Affiche ce qui se passerait si l’applet de commande s’exécute. L’applet de commande n’est pas exécutée.
Type: | SwitchParameter |
Alias: | wi |
Position: | Named |
Valeur par défaut: | False |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
Entrées
Vous pouvez diriger une chaîne qui contient un chemin d’accès à cette applet de commande.
Sorties
None or an object representing the moved item.
Lorsque vous utilisez le paramètre passThru
Notes
Cette applet de commande déplace les fichiers entre les lecteurs pris en charge par le même fournisseur, mais il déplace les répertoires uniquement dans le même lecteur.
Étant donné qu’une commande Move-Item
déplace les propriétés, le contenu et les éléments enfants d’un élément, tous les déplacements sont récursifs par défaut.
Cette applet de commande est conçue pour fonctionner avec les données exposées par n’importe quel fournisseur.
Pour répertorier les fournisseurs disponibles dans votre session, tapez Get-PSProvider
.
Pour plus d’informations, consultez about_Providers.