Move-Item
Déplace un élément d’un emplacement vers un autre.
Syntaxe
Path (Par défaut)
Move-Item
[-Path] <String[]>
[[-Destination] <String>]
[-Force]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-PassThru]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
LiteralPath
Move-Item
[[-Destination] <String>]
-LiteralPath <String[]>
[-Force]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-PassThru]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<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 vers 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 Logs.
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 (.)) vers 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.
Get-ChildItem -Path ".\*.txt" -Recurse | Move-Item -Destination "C:\TextFiles"
La commande utilise l’applet de commande Get-ChildItem pour obtenir tous les éléments enfants dans le répertoire actif (représenté 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 vers 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 Recurse de l’applet de commande Get-ChildItem, la valeur du paramètre path doit être un conteneur. Utilisez le paramètre Include pour spécifier le filtre d’extension de nom de fichier *.txt (Get-ChildItem -Path .\* -Include *.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].
Move-Item -LiteralPath 'Logs[Sept`06]' -Destination '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 ('), afin que le symbole backtick (`) ne soit pas mal interprété.
Le paramètre Destination doit également être placé entre guillemets simples, car il inclut des crochets qui peuvent être mal interprétés.
Paramètres
-Confirm
Vous invite à confirmer avant d’exécuter l’applet de commande.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | cf |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Credential
Remarque
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.
Propriétés du paramètre
| Type: | PSCredential |
| Valeur par défaut: | Current user |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | True |
| Valeur des arguments restants: | False |
-Destination
Spécifie le chemin d’accès à l’emplacement où les éléments sont déplacés. L'emplacement par défaut est le répertoire actif. Les caractères génériques ne sont pas autorisés.
Pour renommer l’élément déplacé, spécifiez un nouveau nom dans la valeur du paramètre destination
Propriétés du paramètre
| Type: | String |
| Valeur par défaut: | Current directory |
| Prend en charge les caractères génériques: | True |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | 1 |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | True |
| Valeur des arguments restants: | False |
-Exclude
Spécifie, en tant que tableau de chaînes, un élément ou des éléments que cette applet de commande exclut dans l’opération. La valeur de ce paramètre qualifie le paramètre Path. Entrez un élément de chemin ou un modèle, tel que *.txt. Les caractères génériques sont autorisés. Le paramètre Exclure est efficace uniquement lorsque la commande inclut le contenu d’un élément, tel que C:\Windows\*, où le caractère générique spécifie le contenu du répertoire C:\Windows.
Propriétés du paramètre
| Type: | String[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | True |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Filter
Spécifie un filtre pour qualifier le paramètre Path. Le fournisseur FileSystem est le seul fournisseur PowerShell installé qui prend en charge l’utilisation de filtres. Vous pouvez trouver la syntaxe du langage de filtre FileSystem dans about_Wildcards. 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.
Propriétés du paramètre
| Type: | String |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | True |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-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, voir about_Providers.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Include
Spécifie, sous la forme d’un tableau de chaînes, un élément ou des éléments inclus dans l’opération. La valeur de ce paramètre qualifie le paramètre Path. Entrez un élément de chemin ou un modèle, tel que *.txt. Les caractères génériques sont autorisés. Le paramètre Include n’est effectif que lorsque la commande inclut le contenu d’un élément, tel que C:\Windows\*, où le caractère générique spécifie le contenu du répertoire C:\Windows.
Propriétés du paramètre
| Type: | String[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | True |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-LiteralPath
Spécifie un chemin d’accès à un ou plusieurs emplacements. La valeur de LiteralPath est utilisée exactement comme elle est typée. Aucun caractère n’est interprété en tant que caractère générique. Si le chemin inclut des caractères d’échappement, placez-le entre guillemets simples ('). Les guillemets simples indiquent à PowerShell de ne pas interpréter de caractères comme séquences d’échappement.
Pour plus d'informations, consultez la section sur les règles de citation.
Propriétés du paramètre
| Type: | String[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | PSPath, DP |
Jeux de paramètres
LiteralPath
| Position: | Named |
| Obligatoire: | True |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | True |
| Valeur des arguments restants: | False |
-PassThru
Retourne un objet représentant l’élément déplacé. Par défaut, cette applet de commande ne génère aucune sortie.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Path
Spécifie le chemin d’accès à l’emplacement actuel des éléments. L'emplacement par défaut est le répertoire actif. Les caractères génériques sont autorisés.
Propriétés du paramètre
| Type: | String[] |
| Valeur par défaut: | Current directory |
| Prend en charge les caractères génériques: | True |
| DontShow: | False |
Jeux de paramètres
Path
| Position: | 0 |
| Obligatoire: | True |
| Valeur du pipeline: | True |
| Valeur du pipeline par nom de propriété: | True |
| Valeur des arguments restants: | False |
-WhatIf
Affiche ce qui se passerait si l’applet de commande s’exécute. L’applet de commande ne s’exécute pas.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | Wi |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
CommonParameters
Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.
Entrées
String
Vous pouvez acheminer une chaîne contenant un chemin vers cette applet de commande.
Sorties
None
Par défaut, cette applet de commande ne retourne aucune sortie.
PSObject
Lorsque vous utilisez le paramètre passThru, cette applet de commande retourne un objet représentant l’élément déplacé.
Notes
PowerShell inclut les alias suivants pour Move-Item:
Toutes les plateformes :
mimove
Windows :
mv
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-Itemdé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, voir about_Providers.