Adiciona sufixo a vários nomes de pastas, mantendo o nome original

2

Basicamente eu tenho um número de pastas, todas chamadas de nomes diferentes. Eu gostaria de adicionar um sufixo ao final de cada pasta e dentro do Windows (sem software de terceiros).

Por exemplo: Mercúrio, Vênus, Terra, Marte

E eu preciso de: Mercury 2015, Vênus 2015, Terra 2015, Marte 2015

    
por Luca 28.05.2015 / 13:53

1 resposta

5

Isso pode ser feito facilmente com o Powershell:

Get-ChildItem -Directory | ForEach {Rename-Item $_ "$_ 2015"}

se você quiser fazer isso de forma recursiva em uma árvore de pastas (subpastas), adicione "-Recurse" após -directory.

O que isso essencialmente faz é:

  • Get-ChildItem (Obter todos os itens na pasta atual)
  • -Directory (limitar pesquisa para pastas)
  • | Pipe (send) resulta no próximo comando
  • ForEach {} (para cada pasta encontrada)
  • Renomear Item $ _ "$ _ 2015" (Renomeie a pasta com o mesmo nome com "2015" no final)

Neste caso, $ _ é o objeto curent enviado do primeiro comando para o segundo (lista de pastas) e, em seguida, representa cada subobjeto (cada pasta) dentro do ForEach.

Lembre-se de colocar o cd na sua pasta base primeiro, senão você estará tentando renomear a pasta errada ... e se você executar isto dentro de C: \ windows \ system32 ou similar, você está com problemas! (cd C: \ usuários \ me \ documentos \ pasta_parte)

Isso é testado no Windows 7, mas a sintaxe pode ser ligeiramente diferente para outras versões do Windows. Se você puder me dizer qual versão do Windows você tem, eu lhe darei outro one-liner para usar.

Além disso, tenha em mente que, se você executá-lo repetidamente, você terminará com "minha pasta 2015 2015 2015 2015 2015" e será um problema limpar

Espero que isso ajude

    
por 28.05.2015 / 14:01