seabeck.pages.dev

Como criar um script PowerShell para renomear arquivos com a data atual?

Renomear arquivos manualmente é uma tarefa repetitiva e propensa a erros. Com um script PowerShell, você automatiza o processo, garantindo consistência e economizando tempo, especialmente ao lidar com grandes volumes de arquivos.

Pré-requisitos

Passo 1: Criar o script básico

O script a seguir percorre todos os arquivos em um diretório e renomeia cada um, adicionando a data atual no formato YYYYMMDD antes do nome original.

$caminho = "C:\SeuDiretorio\Arquivos"
$data = Get-Date -Format "yyyyMMdd"

Get-ChildItem -Path $caminho | ForEach-Object {
    $novoNome = $data + "_" + $_.Name
    Rename-Item -Path $_.FullName -NewName $novoNome
    Write-Host "Arquivo renomeado: $($_.Name) -> $novoNome"
}

Passo 2: Personalizar o formato da data

Você pode ajustar o formato da data conforme sua preferência. Use os códigos de formatação do PowerShell para obter o resultado desejado.

# Formato: 2024-03-15
$data = Get-Date -Format "yyyy-MM-dd"

# Formato: 15-03-2024
$data = Get-Date -Format "dd-MM-yyyy"

# Formato: 15-Mar-2024
$data = Get-Date -Format "dd-MMM-yyyy"

Passo 3: Adicionar prefixo ou sufixo personalizado

Para incluir um prefixo ou sufixo fixo junto com a data, modifique a variável $novoNome conforme necessário.

$prefixo = "Backup_"
$sufixo = "_Final"

$novoNome = $prefixo + $data + $sufixo + "_" + $_.Name

Passo 4: Limitar o script a tipos específicos de arquivo

Se desejar renomear apenas arquivos de um tipo específico, adicione um filtro ao comando Get-ChildItem.

Get-ChildItem -Path $caminho -Filter "*.txt" | ForEach-Object {
    # Lógica de renomeação
}

Exemplo Prático

Arquivo Original Arquivo Renomeado (com data 2024-03-15)
relatorio.docx 20240315_relatorio.docx
dados.xlsx 20240315_dados.xlsx
imagem.jpg 20240315_imagem.jpg

Passo 5: Salvar e executar o script

Salve o código em um arquivo com extensão .ps1 (ex: renomear-arquivos.ps1). Para executar, abra o PowerShell como administrador e digite:

.\renomear-arquivos.ps1

Se encontrar restrições de execução, execute primeiro:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

Conclusão

Com este script PowerShell, você automatiza o renomeamento de arquivos com a data atual em segundos, eliminando a necessidade de trabalho manual e garantindo precisão em todas as operações.