Logo Hardware.com.br
andre.edione
andre.edione Membro Junior Registrado
80 Mensagens 0 Curtidas

Script que conte os bit´s copie e cole.

#1 Por andre.edione 18/11/2004 - 15:17
Boa tarde caro colegas, sou leigo em programação estou estudando shell script agora e ja estou com o seguinte desafio.
Na empresa em que trabalho utilizamos um programa para autopecas, oque acontece tem certos fornecedores que mudam de preço de 15 em 15 dias mais ou menos. este fornecer nos fornece o arquivo de preço pelo edi e eu posso copia-lo em txt. Mas o meu sistema so le aquivos txt para inclusao de precos com os seguintes parametros.
na direita da pagina fica o codigo do produto com ate 23 caracteres.
na esquerda da página fica o preço dos prodos com ate 12 caracteres.
O sistema so vai ler o aquivo dessa maneiro se ele for neste formato acima.
Mas o arquivo que o fornecedor me envia tem alem dos codigos dos produtos tem muitas outras informaçoes.
Gostaria de saber se alguem conhece uma forma, de bolar um script que leia as linhas que eu quero dentro deste arquivo de preço e copie para outro arquivo ou gere outro arquivo somente com as informações que eu quero.
exemplo.

no meu aquivo vai estar assim.

TA1001064 MOLA 040902PC00000000000026915000000050 00000
TA1001632 PRISIONEIRO 040902PC00000000000056910000000010 00000
TA1001634 PINO TRAVA 040902PC00000000000042110000000010 00000

Eu quero que copie somente as linhas que estao em negritos.
Ele vai ficar da seguinte maneira.


001064 000000000000269
001632 000000000000569
001634 000000000000421
Agradeço desde já. :?:
Bruno Morais Aliste
Bruno Morais... Veterano Registrado
1.3K Mensagens 1 Curtida
#4 Por Bruno Morais...
18/11/2004 - 16:41
andre.edione
Bem eu gostaria de usar shell script. 8O


cara, vc pode fazer isso em vb.
ou seja, vc pode colocar o arquivo txt em um textbox
e ao clicar em um botão ele irá te fornecer os dados
filtrados no mesmo textbox.
Como o número de caracteres é fixo para os dados q vc
quer filtrar fica mais facil...
se bem q vai dar um trabalhinho montar esse script
como são várias linhas.... mas dá sim....

não lhe garanto fornecer o script pronto 8)
mas algumas dicas dá pra dar sim...

falow...
ASUS M4A87TD EVO

Phenom II X4 955 Black Edition [EMAIL="3.2@4.1Ghz"]3.2@4.1Ghz[/EMAIL]

8GB G.Skill Ripjaws @1.7Ghz

Radeon HD5670 1GB

SB X-Fi Titanium + Edifier R251

LG W2353V HD

Corsair 430w
jqueiroz
jqueiroz Cyber Highlander Registrado
104K Mensagens 5.7K Curtidas
#5 Por jqueiroz
18/11/2004 - 17:13
Hummm vc pediu em Shell Script, acredito então que use Linux (ou algum outro Unix-Like). Nada de VB, então.

Complicou um pouco. Se as colunas fossem de tamanho fixo, ou se houvesse um delimitador, seria fácil: bastaria usar o programa "cut".

Pelo menos vc garante que sempre a primeira coluna vai ser precedida pela seq. "TA1" e sucedida por um espaço, e que a segunda vai ser precedida sempre por um "PC", e que ela vai ter sempre 15 dígitos? Pq se for, dá pra extrair a informação com um programa em Perl. Assim:


#! /usr/bin/perl -w
while( <> ) {
if( $_ =~ /TA1(\d+) .*?PC(\d{15})/ ) {
print "$1 $2\n";
}
}


Aí vc pode fazer:

perl programa.pl duascolunas.txt

Outra alternativa seria fazer com o "awk", mas esse eu não sei usar.
"chmod 777 nunca ajudou ninguém" (c) 2002-2021 JQueiroz/FGdH
Conheça o Blog do Zekke
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal