Rename-Item
Renomeia um item em um namespace de provedor do PowerShell.
Sintaxe
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
O Rename-Item
cmdlet altera o nome de um item especificado. Este cmdlet não afeta o conteúdo do item que é renomeado.
Você não pode usar Rename-Item
para mover um item, por exemplo, especificando um caminho junto com o novo nome. Para mover e renomear um item, use o Move-Item
cmdlet.
Exemplos
Exemplo 1: Renomear um arquivo
Esse comando renomeia o arquivo daily_file.txt
para monday_file.txt
.
Rename-Item -Path "c:\logfiles\daily_file.txt" -NewName "monday_file.txt"
Exemplo 2: Renomear e mover um item
Você não pode usar Rename-Item
para renomear e mover um item. Especificamente, você não pode fornecer um caminho para o valor do parâmetro NewName , a menos que o caminho seja idêntico ao caminho especificado no parâmetro Path . Caso contrário, é permitido somente um novo nome.
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"
Este exemplo tenta renomear o project.txt
arquivo no diretório atual para old-project.txt
no D:\Archive
diretório. O resultado é o erro mostrado na saída.
Em vez disso, use o Move-Item
cmdlet.
Exemplo 3: Renomear uma chave do Registro
Este exemplo renomeia uma chave do Registro de Publicidade para Marketing. Quando o comando é concluído, a chave é renomeada, mas as entradas de registro na chave permanecem inalteradas.
Rename-Item -Path "HKLM:\Software\MyCompany\Advertising" -NewName "Marketing"
Exemplo 4: Renomear vários arquivos
Este exemplo renomeia todos os *.txt
arquivos no diretório atual para *.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
O Get-ChildItem
cmdlet obtém todos os arquivos na pasta atual que têm uma extensão de .txt
arquivo e, em seguida, os canaliza para Rename-Item
. O valor de NewName é um bloco de script que é executado antes que o valor seja enviado para o parâmetro NewName.
No bloco de script, a $_
variável automática representa cada objeto de arquivo à medida que chega ao comando por meio do pipeline. O bloco de script usa o -replace
operador para substituir a extensão de arquivo de cada arquivo por .log
. Observe que a correspondência usando o operador não diferencia -replace
maiúsculas de minúsculas.
Parâmetros
-Confirm
Solicita sua confirmação antes de executar o cmdlet.
Tipo: | SwitchParameter |
Aliases: | cf |
Cargo: | Named |
Valor padrão: | False |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Credential
Observação
Esse parâmetro não tem suporte de nenhum provedor instalado com o PowerShell. Para representar outro usuário ou elevar suas credenciais ao executar esse cmdlet, use Invoke-Command.
Tipo: | PSCredential |
Cargo: | Named |
Valor padrão: | Current user |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-Force
Força o cmdlet a renomear itens que não podem ser alterados de outra forma, como arquivos ocultos ou somente leitura ou aliases ou variáveis somente leitura. O cmdlet não pode alterar aliases ou variáveis constantes. A implementação varia de provedor para provedor. Para obter mais informações, consulte about_Providers.
Mesmo usando o parâmetro Force , o cmdlet não pode substituir as restrições de segurança.
Tipo: | SwitchParameter |
Cargo: | Named |
Valor padrão: | False |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-LiteralPath
Especifica um caminho para um ou mais locais. O valor de LiteralPath é usado exatamente como é digitado. Nenhum caractere é interpretado como caractere curinga. Se o caminho incluir caracteres de escape, coloque-o entre aspas simples. As aspas simples informam ao PowerShell para não interpretar nenhum caractere como sequências de escape.
Para obter mais informações, consulte about_Quoting_Rules.
Tipo: | String |
Aliases: | PSPath, LP |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-NewName
Especifica o novo nome do item. Digite apenas um nome, não um caminho e nome. Se você inserir um caminho diferente do caminho especificado no parâmetro Path, Rename-Item
o gerará um erro.
Para renomear e mover um item, use Move-Item
.
Você não pode usar caracteres curinga no valor do parâmetro NewName . Para especificar um nome para vários arquivos, use o operador Replace em uma expressão regular. Para obter mais informações sobre o operador Substituir, consulte about_Comparison_Operators.
Tipo: | String |
Cargo: | 1 |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-PassThru
Retorna um objeto que representa o item para o pipeline. Por padrão, este cmdlet não gera saída.
Tipo: | SwitchParameter |
Cargo: | Named |
Valor padrão: | False |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Path
Especifica o caminho do item a ser renomeado.
Tipo: | String |
Cargo: | 0 |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-WhatIf
Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.
Tipo: | SwitchParameter |
Aliases: | wi |
Cargo: | Named |
Valor padrão: | False |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
Entradas
Você pode canalizar uma cadeia de caracteres que contém um caminho para esse cmdlet.
Saídas
None
Por padrão, esse cmdlet não retorna nenhuma saída.
Quando você usa o parâmetro PassThru , esse cmdlet retorna um objeto que representa o item renomeado.
Observações
O PowerShell inclui os seguintes aliases para Rename-Item
:
- Todas as plataformas:
ren
rni
Rename-Item
foi projetado para funcionar com os dados expostos por qualquer provedor. Para listar os provedores disponíveis em sua sessão, digite Get-PsProvider
. Para obter mais informações, consulte about_Providers.