Ir ao conteúdo

Bat Script Windows BAT remover linhas final arquivo


Ir à solução Resolvido por ricardo_br,

Posts recomendados

Postado

Boa noite @Ricardo a um tempo atras você me ajudou com o script para remover linhas em branco de um arquivo .txt

Antes as entradas do arquivo  era assim :

 

989798768(varios espacoes em branco)

 

Precisava alterar para que leia o arquivo e remova SOMENTE os espacos em branco do final dA FRASE

 

exemplo:

 

ANTONIO ROGERIO RAMOS(espacos em branco)

JOSE ANTONIO(espacos em branco)

 

Sera que consegue ajudar a modificar o script ?

 

Grato

 

SCRIPT ABAIXO

 

 

@echo off

REM ------> TIRA ESPACOS EM BCO FINAL DA LINHA do ARQUIVO  (esta_na_matricula_e_nao_esta_arquivo_itau.txt) <------


chcp 1252 >nul
:: Informe o arquvo de texto aqui:
set Arquivo=esta_na_matricula_e_nao_esta_arquivo_itau.txt
if not exist "%Arquivo%" exit

SetLocal EnableDelayedExpansion

for %%a in ("%Arquivo%") do (
                             set NArquivo=%%~na
                             set EArquivo=%%~xa
                             set CArquivo=%%~dpa
                            )

set "NovoArquivo=%CArquivo%%NArquivo%_Resultado%EArquivo%"

for /f "usebackq delims=" %%a in ("%Arquivo%") do call :Editar "%%~a"
exit

:Editar
echo "%~1"
set "Linha="                   
set "Linha=%~1"
set "Linha=%Linha: =%"
>>"%NovoArquivo%" echo %Linha%
goto :EOF

Postado

Na parte do :Repete ele verifica se o último caractere da linha é um espaço e caso sim ele o remove, faz uma nova verificação se último caracetere é um espaço e assim adiante....

 

@echo off

REM ------> TIRA ESPACOS EM BCO FINAL DA LINHA do ARQUIVO  (esta_na_matricula_e_nao_esta_arquivo_itau.txt) <------


chcp 1252 >nul
:: Informe o arquvo de texto aqui:
set Arquivo=esta_na_matricula_e_nao_esta_arquivo_itau.txt
if not exist "%Arquivo%" exit

SetLocal EnableDelayedExpansion

for %%a in ("%Arquivo%") do (
                             set NArquivo=%%~na
                             set EArquivo=%%~xa
                             set CArquivo=%%~dpa
                            )

set "NovoArquivo=%CArquivo%%NArquivo%_Resultado%EArquivo%"

for /f "usebackq delims=" %%a in ("%Arquivo%") do call :Editar "%%~a"
exit

:Editar
echo "%~1"
set "Linha="                   
set "Linha=%~1"
:Repete
if "%Linha:~-1%"==" " (
                       set "Linha=%Linha:~0,-1%"
                       goto :Repete
                      )

>>"%NovoArquivo%" echo %Linha%
goto :EOF

 

Postado

Boa noite Ricardo , ele esta tirando todos os espacos  e não somente do FINAL 

 

ANTONIO ROGERIO espaco espaco espaco

 

Apos rodar ele fica assim

 

ANTONIOROGERIO

 

Preciso que fique assim

 

ANTONIO ROGERIO(tirar so os espacos do final)

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...

curso-hardware-popup.jpg

LANÇAMENTO:
CURSO DE HARDWARE
DO GABRIEL TORRES!

CLIQUE AQUI E CONFIRA!