Ir ao conteúdo

Posts recomendados

Postado

Eu modifiquei um pouco para que a pasta com os arquivos possa ser arrastada diretamente para o bat e ele já renomear sem precisar digitar o caminho:

 

Arrastar.gif

 

@echo off
chcp 1252 >nul

IF exist "%~1" (IF exist "%~1\" set "Pasta=%~1") else (set /p "Pasta=Digite o endereço da pasta: ")

pushd "%Pasta%"
for /f "Delims=" %%a in ('dir /a-d /b') do (
call :Renomear "%%~a"
)
exit

:Renomear
set /a Contador_+=1
set Contador=000%Contador_%
set Contador=%Contador:~-4%
ren "%~1" "%Contador% %~1"
goto :EOF 

 

 

  • 2 anos depois...
Postado

@Nailson Guilherme Se eu quiser que ao ínves de 0001 NOME DO ARQUIVO, fique 1 - NOME DO ARQUVO; 2 - NOME DO ARQUVO [...], o que posso alterar? Ou seja queria tirar esses zeros da frente e adicionar um traço separando o número do nome. Tem como?

 

Postado

@carlosrrj é só mudar essa parte:

 

:Renomear
set /a Contador_+=1
set Contador=000%Contador_%
set Contador=%Contador:~-4%
ren "%~1" "%Contador% %~1"
goto :EOF

 

Por essa:

 

:Renomear
set /a Contador_+=1
ren "%~1" "%Contador_%-%~1"
goto :EOF  

 

Postado

@ricardo_br Muito obrigado. Acabou que eu fiquei testando vários programas que fiz na internet e nenhum deu muito certo e tinha desistido. Hoje lembrei disso e como não entendo de programação pedi para o COPILOT criar um programa simples para mim para renomear os arquivos. Deu muito certo. Eu pedi para que os nomes ficassem da forma como costumo renomear (Doc. 1 - nome; Doc.2 - nome) e pedi pra que abrisse um janela para eu selecionar a pasta, porque n gostaria de ter que ficar editando o programa com o nome da pasta toda vez. Compartilho como vocês o código:

 

Siga os passos abaixo:

Abra o Bloco de Notas.

Copie e cole o código abaixo.

Salve o arquivo com a extensão .vbs (por exemplo, renomear_arquivos.vbs).

Execute o script clicando duas vezes no arquivo .vbs.

Aqui está o código:

 

Dim objShell, objFolder, objFSO, objFolderItem, objFile, count

Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.BrowseForFolder(0, "Selecione a pasta:", &H4000, 17)

If Not objFolder Is Nothing Then
    Set objFolderItem = objFolder.Self
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    Set objFolder = objFSO.GetFolder(objFolderItem.Path)
    
    count = 1
    For Each objFile In objFolder.Files
        objFile.Name = "Doc." & count & " - " & objFile.Name
        count = count + 1
    Next
    
    MsgBox "Renomeação concluída!"
Else
    MsgBox "Nenhuma pasta selecionada. Saindo..."
End If

 

  • Curtir 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...