Como renomear todos os arquivos que terminam com “.BAK” [duplicado]

0

Eu tenho um sistema de arquivos do Windows onde um soluço no nosso software de backup renomeou centenas de arquivos.

A mudança é assim:
"ABC.PDF" - > "ABC.PDF.BAK"

Isso aconteceu com alguns, mas não com todos os arquivos em um diretório.

Gostaria de renomear esses arquivos para o nome antigo, mas o script deve gerar ou ignorar os casos em que isso não é possível, porque já existe um "ABC.PDF".

Não estou familiarizado com scripts em lote, mas o PowerShell também está disponível.

    
por Christian Sauer 02.09.2014 / 09:53

1 resposta

1

Você pode fazer algo assim no powershell:

$files = dir *.BAK
foreach($file in $files) {
    Rename-Item $file $file.BaseName -ErrorAction Ignore
}

Haverá apenas um erro se esses arquivos não existirem mais ou se você estiver tentando sobrescrever um arquivo.

Se você quiser ver o que ele fará primeiro, adicione o sinalizador -WhatIf.

    
por 02.09.2014 / 10:38