Move-Item
Déplace un élément d'un emplacement à un autre.
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
L’applet Move-Item
de commande déplace un élément, y compris ses propriétés, son contenu et ses éléments enfants, d’un emplacement à un autre. Les emplacements doivent être pris en charge par le même fournisseur.
Par exemple, elle peut déplacer un fichier ou un sous-répertoire d'un répertoire à un autre ou une sous-clé de Registre d'une clé à une autre.
Lors du déplacement d'un élément, celui-ci est ajouté au nouvel emplacement et supprimé de l'emplacement d'origine.
Exemples
Exemple 1 : Déplacer un fichier vers un autre répertoire et le renommer
Cette commande déplace le Test.txt
fichier du C:
lecteur vers le répertoire et le E:\Temp
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 C:\Temp
répertoire et son contenu vers le C:\Logs
répertoire.
Le répertoire « Temp » et 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
) du répertoire actif (représenté par un point (.
)) vers le C:\Logs
répertoire.
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, de manière récursive, vers le répertoire « C :\TextFiles ».
Get-ChildItem -Path ".\*.txt" -Recurse | Move-Item -Destination "C:\TextFiles"
La commande utilise l’applet Get-ChildItem
de commande pour obtenir tous les éléments enfants du 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
, qui déplace les fichiers texte vers le répertoire « TextFiles ».
Si les fichiers qui doivent être déplacés vers « C :\Textfiles » ont le même nom, Move-Item
affiche une erreur et continue, mais il déplace un seul fichier avec chaque nom vers « C :\Textfiles ».
Les autres fichiers restent dans les 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à.
En outre, 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 avec Get-ChildItem
.
Notes
Dans Windows PowerShell 2.0, lors de l’utilisation du paramètre Recurse de l’applet Get-ChildItem
de commande, 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 de Registre et les valeurs de 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 la clé elle-même.
Dans cette commande, les noms facultatifs des paramètres Path et 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é à la place de Path, car le nom du répertoire d’origine inclut des caractères de crochet gauche et de crochet droit (« [ » et « ] »). Le chemin d'accès est également placé entre des guillemets simples (' '), afin que le symbole de l'accent grave (') ne soit pas incorrectement interprété.
Le paramètre Destination ne nécessite pas de chemin littéral, car la variable Destination doit également être placée entre guillemets simples, car elle inclut des crochets qui peuvent être mal interprétés.
Paramètres
-Confirm
Vous demande une confirmation avant d’exécuter l’applet de commande.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Notes
Ce paramètre n’est pris en charge par aucun fournisseur installé 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 |
Default value: | Current user |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Destination
Spécifie le chemin d'accès à l'emplacement vers lequel les éléments sont déplacés. L'emplacement 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 seul emplacement.
Pour renommer l’élément en cours de déplacement, spécifiez un nouveau nom dans la valeur du paramètre Destination .
Type: | String |
Position: | 1 |
Default value: | Current directory |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-Exclude
Spécifie, en tant que tableau de chaînes, un ou plusieurs é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 ou un modèle de chemin d’accès, tel que *.txt
. Les caractères génériques sont autorisés. Le paramètre Exclude est effectif 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 C:\Windows
répertoire.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-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 trouverez 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 au lieu de laisser PowerShell filtrer les objets après leur récupération.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Force
Force l’exécution de la commande sans demander la confirmation de l’utilisateur. L'implémentation est différente d'un fournisseur à l'autre. Pour plus d'informations, consultez about_Providers.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Include
Spécifie, en tant que tableau de chaînes, un ou plusieurs éléments que cette applet de commande inclut dans l’opération. La valeur de ce paramètre qualifie le paramètre Path. Entrez un élément ou un modèle de chemin d’accès, tel que "*.txt"
. Les caractères génériques sont autorisés. Le paramètre Include 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 C:\Windows
répertoire.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-LiteralPath
Spécifie un chemin d’accès à un ou plusieurs emplacements. La valeur de LiteralPath est utilisée exactement telle qu’elle est tapée. Aucun caractère n’est interprété en tant que caractère générique. Si le chemin d’accès inclut des caractères d’échappement, mettez-le entre des guillemets simples. Les guillemets simples indiquent à PowerShell de ne pas interpréter de caractères comme des séquences d’échappement.
Pour plus d’informations, consultez about_Quoting_Rules.
Type: | String[] |
Aliases: | PSPath, LP |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-PassThru
Retourne un objet représentant l’élément que vous utilisez. Par défaut, cette applet de commande ne génère aucun résultat.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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.
Type: | String[] |
Position: | 0 |
Default value: | Current directory |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-WhatIf
Montre ce qui se passe en cas d’exécution de l’applet de commande. L’applet de commande n’est pas exécutée.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Entrées
Vous pouvez diriger une chaîne qui contient un chemin vers cette applet de commande.
Sorties
None or an object representing the moved item
Lorsque vous utilisez le paramètre PassThru , cette applet de commande génère un objet représentant l’élément déplacé. Sinon, cette applet de commande ne génère aucune sortie.
Notes
- Cette applet de commande déplace les fichiers entre les lecteurs pris en charge par le même fournisseur, mais ne déplace les répertoires qu’au sein du même lecteur.
- Étant donné qu’une
Move-Item
commande 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.