Rename-Item
Renomme un élément dans un espace de noms de fournisseur PowerShell.
Syntax
Rename-Item
[-Path] <String>
[-NewName] <String>
[-Force]
[-PassThru]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Rename-Item
-LiteralPath <String>
[-NewName] <String>
[-Force]
[-PassThru]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
L’applet Rename-Item
de commande modifie le nom d’un élément spécifié. Cette applet de commande n’affecte pas le contenu de l’élément qui est renommé.
Vous ne pouvez pas utiliser Rename-Item
pour déplacer un élément, par exemple en spécifiant un chemin d’accès avec le nouveau nom. Pour déplacer et renommer un élément, utilisez l’applet de Move-Item
commande .
Exemples
Exemple 1 : Renommer un fichier
Cette commande renomme le fichier daily_file.txt
en monday_file.txt
.
Rename-Item -Path "c:\logfiles\daily_file.txt" -NewName "monday_file.txt"
Exemple 2 : Renommer et déplacer un élément
Vous ne pouvez pas utiliser Rename-Item
pour renommer et déplacer un élément. Plus précisément, vous ne pouvez pas fournir de chemin d’accès pour la valeur du paramètre NewName , sauf si le chemin d’accès est identique au chemin spécifié dans le paramètre Path . Sinon, seul un nouveau nom est autorisé.
Rename-Item -Path "project.txt" -NewName "d:\archive\old-project.txt"
Rename-Item : can't rename because the target specified represents a path or device name.
At line:1 char:12
+ Rename-Item <<<< -path project.txt -NewName d:\archive\old-project.txt
+ CategoryInfo : InvalidArgument: (:) [Rename-Item], PS> Move-Item -Path "project.txt" -De
stination "d:\archive\old-project.txt"
Cet exemple tente de renommer le project.txt
fichier dans le répertoire actif en old-project.txt
dans le D:\Archive
répertoire . Il en résulte l’erreur indiquée dans la sortie.
Utilisez plutôt l’applet Move-Item
de commande .
Exemple 3 : Renommer une clé de Registre
Cet exemple renomme une clé de Registre de Publicité en Marketing. Une fois la commande exécutée, la clé est renommée, mais les entrées de Registre qui figurent dans la clé demeurent inchangées.
Rename-Item -Path "HKLM:\Software\MyCompany\Advertising" -NewName "Marketing"
Exemple 4 : Renommer plusieurs fichiers
Cet exemple renomme tous les *.txt
fichiers du répertoire actif en *.log
.
Get-ChildItem *.txt
Directory: C:\temp\files
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 10/3/2019 7:47 AM 2918 Friday.TXT
-a---- 10/3/2019 7:46 AM 2918 Monday.Txt
-a---- 10/3/2019 7:47 AM 2918 Wednesday.txt
Get-ChildItem *.txt | Rename-Item -NewName { $_.Name -replace '.txt','.log' }
Get-ChildItem *.log
Directory: C:\temp\files
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 10/3/2019 7:47 AM 2918 Friday.log
-a---- 10/3/2019 7:46 AM 2918 Monday.log
-a---- 10/3/2019 7:47 AM 2918 Wednesday.log
L’applet Get-ChildItem
de commande obtient tous les fichiers du dossier actif qui ont une .txt
extension de fichier, puis les redirige vers Rename-Item
. La valeur de NewName est un bloc de script qui s’exécute avant l’envoi de la valeur au paramètre NewName .
Dans le bloc de script, la $_
variable automatique représente chaque objet fichier tel qu’il arrive à la commande via le pipeline. Le bloc de script utilise l’opérateur -replace
pour remplacer l’extension de fichier de chaque fichier par .log
. Notez que la correspondance à l’aide de l’opérateur ne respecte pas la -replace
casse.
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 |
-Force
Force l’applet de commande à renommer des éléments qui ne peuvent pas autrement être modifiés, tels que des fichiers masqués ou en lecture seule ou des alias ou des variables en lecture seule. L’applet de commande ne peut pas modifier les alias de constante ou les variables. L'implémentation est différente d'un fournisseur à l'autre. Pour plus d'informations, consultez about_Providers.
Même à l’aide du paramètre Force , l’applet de commande ne peut pas remplacer les restrictions de sécurité.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-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 |
-NewName
Spécifie le nouveau nom de l’élément. Entrez uniquement un nom, et non un chemin d’accès et un nom. Si vous entrez un chemin qui diffère du chemin spécifié dans le paramètre Path , Rename-Item
génère une erreur.
Pour renommer et déplacer un élément, utilisez Move-Item
.
Vous ne pouvez pas utiliser de caractères génériques dans la valeur du paramètre NewName . Pour spécifier un nom pour plusieurs fichiers, utilisez l’opérateur Replace dans une expression régulière. Pour plus d’informations sur l’opérateur Replace, consultez about_Comparison_Operators.
Type: | String |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-PassThru
Retourne un objet qui représente l’élément dans le pipeline. 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 de l’élément à renommer.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-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
Par défaut, cette applet de commande ne retourne aucune sortie.
Lorsque vous utilisez le paramètre PassThru , cette applet de commande retourne un objet représentant l’élément renommé.
Notes
PowerShell inclut les alias suivants pour Rename-Item
:
- Toutes les plateformes :
ren
rni
Rename-Item
est conçu 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.