Ir ao conteúdo

Bat desenvolver bat windows ler arquivo


Ir à solução Resolvido por Antonio Baptista,

Posts recomendados

  • Solução
Postado

Bom dia .

Preciso ler um arquivo .txt pesquisar  na posicao da linha 28a37 se tiver conteudo imprimir a posicao 16a24

exemplo:

 

00010008000000012345678999910/10/2010
000233779988777987654321888
00038877996655598765432977721/10/2012

 

o resultado seria

123456789
987654329

 

Grato

Rogerio

Postado

Veja se é isso:

 

4JZOqJ5.gif

 

@echo off

if not "%~x1"==".txt" exit
set "Arquivo=%~n1"
set "Extencao=%~x1"

for /f "usebackq delims=" %%a in ("%~1") do call :Editar "%%~a"
start "" notepad.exe "%Arquivo%_Resultado%Extencao%"
exit

:Editar
set "Linha=%~1"
if not [%Linha:~27,9%]==[] for %%a in ("%Linha:~15,9%") do >>"%Arquivo%_Resultado%Extencao%" echo %%~a
goto :EOF

 

 

Postado
20 minutos atrás, ricardo_br disse:

Veja se é isso:

 

4JZOqJ5.gif

 

@echo off

if not "%~x1"==".txt" exit
set "Arquivo=%~n1"
set "Extencao=%~x1"

for /f "usebackq delims=" %%a in ("%~1") do call :Editar "%%~a"
start "" notepad.exe "%Arquivo%_Resultado%Extencao%"
exit

:Editar
set "Linha=%~1"
if not [%Linha:~27,9%]==[] for %%a in ("%Linha:~15,9%") do >>"%Arquivo%_Resultado%Extencao%" echo %%~a
goto :EOF

 

 

Ricardo é isso mesmo que preciso muito obrigado , voce é 10

Postado

Ricardo Boa noite.

Estava testando o codigo a principio funcionou , mas quando meu arquivo tem dados apos os brancos ele não pega. se conseguir dar uma olhada te agradeco

exemplo

00010008000000012345678999910/10/2010
000233779988777987654321888                  001
00038877996655598765432977721/10/2012

 

Preciso ler um arquivo .txt pesquisar  na posicao da linha 28a37 se tiver conteudo imprimir a posicao 16a24

exemplo:

 

00010008000000012345678999910/10/2010
000233779988777987654321888
00038877996655598765432977721/10/2012

 

o resultado seria

123456789
987654329

 

Grato

Rogerio

Postado

@Antonio Baptista No caso o bat funciona como o esperado pois no caso que você citou:

000233779988777987654321888                  001

 

Não tem nada (só espaços) entre a posição 28 e 37 portanto o bat ignora essa linha, não era isso que você queria?

 

Postado
33 minutos atrás, ricardo_br disse:

@Antonio Baptista No caso o bat funciona como o esperado pois no caso que você citou:

000233779988777987654321888                  001

 

Não tem nada (só espaços) entre a posição 28 e 37 portanto o bat ignora essa linha, não era isso que você queria?

 

 

Entao sim tera os espacos em branco , mas depois dos espacos tera outros dados , por isso limitei os espacos , me parece que apos os brancos ele se perde se tiver mais dados

Postado

tem razão vou dar uma olhada aqui.

 

Veja agora: 

 

@echo off

if not "%~x1"==".txt" exit
set "Arquivo=%~n1"
set "Extencao=%~x1"

for /f "usebackq delims=" %%a in ("%~1") do call :Editar "%%~a"
if exist "%Arquivo%_Resultado%Extencao%" start "" notepad.exe "%Arquivo%_Resultado%Extencao%"
exit

:Editar
set "Linha=%~1"
set "Vazio=%Linha:~27,9%"
if not "%Vazio: =%"=="" for %%a in ("%Linha:~15,8%") do >>"%Arquivo%_Resultado%Extencao%" echo %%~a
goto :EOF

 

Postado
11 horas atrás, ricardo_br disse:

tem razão vou dar uma olhada aqui.

 

Veja agora: 

 

@echo off

if not "%~x1"==".txt" exit
set "Arquivo=%~n1"
set "Extencao=%~x1"

for /f "usebackq delims=" %%a in ("%~1") do call :Editar "%%~a"
if exist "%Arquivo%_Resultado%Extencao%" start "" notepad.exe "%Arquivo%_Resultado%Extencao%"
exit

:Editar
set "Linha=%~1"
set "Vazio=%Linha:~27,9%"
if not "%Vazio: =%"=="" for %%a in ("%Linha:~15,8%") do >>"%Arquivo%_Resultado%Extencao%" echo %%~a
goto :EOF

 

 

Ricardo Deu certo muito obrigado pelo APOIO a proposito você tem cursos , ou pagina para te seguir ?

Abco

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

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!