Comando do Windows 7 para adicionar um zero inicial a um lote de nomes de arquivos

3

Está tendo problemas para obter a sintaxe de comando correta. Precisamos adicionar um zero inicial a um lote de arquivos em um diretório regularmente. Não consigo baixar e instalar um item de software para fazer isso. O sistema operacional é o Windows-7. O comprimento dos nomes de arquivo varia. ou seja, 000165-CityName1.pdf para 0000165-CityName1.pdf 000166-CityNameLonger2.pdf para 0000166-CityNameLonger2.pdf etc. Procurando por um comando de renomeação que funcione, alguém pode sugerir um, seria apreciado. Eu tentei meia dúzia sem sucesso.

    
por Techexpressinc 24.06.2016 / 15:38

3 respostas

2

Este script PowerShell deve funcionar bem para adicionar um 0 ao início de cada nome de arquivo em uma pasta. Salve esse script como .ps1.

Get-ChildItem -Path "C:\temp\cityfiles\" | 
  Rename-Item -NewName {$_.BaseName.insert(0,'0') + $_.Extension}

Isso leva todos os arquivos dentro da pasta cityfiles e adiciona um '0' ao início de cada nome de arquivo.

    
por 24.06.2016 / 16:27
1

Enquanto você poderia colocar isso em um arquivo bat e colocar algumas opções e verificação, indo para um prompt de cmd e cd para a pasta que você quer

  • ren .pdf 0 .pdf

Adicionará um zero na frente do nome para qualquer pdf

    
por 24.06.2016 / 16:37
1

Como adiciono um zero inicial a um lote de nomes de arquivos?

Use o seguinte comando:

for /f %f in ('dir /b *.pdf') do ren "%f" "0%f"

Para usar em um arquivo de lote, substitua % por %% :

for /f %%f in ('dir /b *.pdf') do ren "%%f" "0%%f"

Exemplo de uso:

F:\test\test>dir
 Volume in drive F is Expansion
 Volume Serial Number is 3656-BB63

 Directory of F:\test\test

24/06/2016  21:39    <DIR>          .
24/06/2016  21:39    <DIR>          ..
24/06/2016  21:38                 0 000165-CityName1.pdf
24/06/2016  21:38                 0 000166-CityNameLonger2.pdf
               2 File(s)              0 bytes
               2 Dir(s)  1,769,011,425,280 bytes free

F:\test\test>for /f %f in ('dir /b *.pdf') do ren "%f" "0%f"

F:\test\test>ren "000165-CityName1.pdf" "0000165-CityName1.pdf"

F:\test\test>ren "000166-CityNameLonger2.pdf" "0000166-CityNameLonger2.pdf"

F:\test\test>dir
 Volume in drive F is Expansion
 Volume Serial Number is 3656-BB63

 Directory of F:\test\test

24/06/2016  21:40    <DIR>          .
24/06/2016  21:40    <DIR>          ..
24/06/2016  21:38                 0 0000165-CityName1.pdf
24/06/2016  21:38                 0 0000166-CityNameLonger2.pdf
               2 File(s)              0 bytes
               2 Dir(s)  1,769,011,425,280 bytes free

Leitura Adicional

por 24.06.2016 / 22:45