JHOL ,

Não sei se ajudaria mas pode-se tentar 

Digamos que seu arquivo teste.txt possuísse o conteúdo :

04067174401000100038101511711060824 0000 - linha 1
04067174402000100038101511711060824 0000 - linha 2
02067305475002200038211101711060000 0042 - linha 3
01067305480002200038811101711060000 0042 - linha 4
01068157444002200262911101711060000 0043 - linha 5
03067305481000300038911101711060000 0022 - linha 6
01067305481000300038911101711060000 0022 - linha 7


cat teste.txt | sed -n '/^04/p' | while read a; do echo ${a:16:5}; done | awk 
'{ tot = tot + $1} END { print"resultado ==> " tot}'

resultado ==> 762




----- Mensagem original ----
De: JHOL XD <[EMAIL PROTECTED]>
Para: [email protected]
Enviadas: Terça-feira, 26 de Dezembro de 2006 13:07:20
Assunto: [shell-script] Dificuldade de fazer um scrip de shell

Ola pessoal meu problema é o seguinte

estou procurando um combo de comandos em shell script para fazer
em uma linha de +ou- 39 carteres numericos em um arquivo de mais de
20mil linhas

selecionar os dois primeiros caracteres em um numero especifico
selecionar do 16 caractere ao 21 caractere e essa sequencia de
cararteres seja somada

um ex

0406717440100010003 8101511711060824 0000 - linha 1
0406717440200010003 8101511711060824 0000 - linha 2
0206730547500220003 8211101711060000 0042 - linha 3
0106730548000220003 8811101711060000 0042 - linha 4
0106815744400220026 2911101711060000 0043 - linha 5
0306730548100030003 8911101711060000 0022 - linha 6
0106730548100030003 8911101711060000 0022 - linha 7

preciso selecionar todas as linhas com começo 04 e somar a sequencia
do 16 caractere ao 21 caratere
dessa linha no caso desse ex selecionaria

0406717440100010003 8101511711060824 0000 - linha 1
0406717440200010003 8101511711060824 0000 - linha 2

dai somaria a sequencia da 16 ao 21 caractere no caso 000381

000381
+000381
000762

no caso exiba o numero 000762

eu cheguei até esse comando até

agora cat arquivo_exemplo | grep -E '^04' | cut -c 16-21

por favor me ajudem desde já agradeço




__________________________________________________
Fale com seus amigos  de graça com o novo Yahoo! Messenger 
http://br.messenger.yahoo.com/ 

[As partes desta mensagem que não continham texto foram removidas]

Responder a