shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Usando AWK


From: Tiago Barcellos Peczenyj
Subject: Re: [shell-script] Usando AWK
Date: Wed, 1 Feb 2006 10:32:31 -0200

realmente, podemos medir o comprimento de uma linha com um wc -c, assim como
validar os 32 primeiros caracteres com um cut + egrep.

porem o awk ja encarna estas 2 operações. acho que é uma questão de gosto

#!/bin/bash
MIN=1440
SEQ="ASDASDAS ASDAS ASDSDAS"
MAX=$(wc -l arquivo)

for i in $(seq$ MAX); do
TAM=$(head -$i $arquivo | tail -1 | wc -c)
[ $TAM -lt $MIN ] && echo "Linha '${i}' possui menos caracteres '${TAM}' que
'${MIN}'. "
head -$i $arquivo | tail -1| egrep -q "^${SEQ}" || echo "Linha '${i}' nao
casa com '${SEQ}'
done

Acho que AWK ainda é mais rapido

Em 01/02/06, Fabiano Caixeta Duarte <address@hidden> escreveu:
>
>  -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Quando vi que vc precisa de algo em awk já liguei as antenas. Mas vc
> poderia ser (bem) mais específico?
>
> head no arquivo de entrada... resultado esperado (arquivo de saída) são
> bons exemplos dos dados que nos ajudariam a ajudá-lo.
>
> Fabiano Caixeta Duarte
> Consultor em soluções para Redes de Computadores
> Ribeirão Preto - SP
>
> IGOR escreveu:
> > Bom dia pessoal,
> >
> > preciso da ajuda de vocês para usar o AWK.
> >
> > Como faço isso em awk:
> > - Preciso validar linha a linha do arquivo e se a linha for menor que um
> tamanho definido em uma váriavel, da a mensagem que a linha do arquivo está
> incompleta e ainda joga a saida para um log.
> >
> > - E também preciso validar os primeiros 32 caracteres de cada linha do
> arquivo. Que também, esses caracteres vão estar definidos em uma váriavel.
> > -Se não estiver ok, da a mensagem que os caracteres são inválidos e
> ainda joga no log.
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.2.7 (GNU/Linux)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
>
> iD8DBQFD4CZm++b4Zs4fOnMRAn2MAKCM8sbMB947baF4V34WPcaHkFvbwwCfdl/Y
> udsr0hEoIbhOr+uSgt0jc7E=
> =/hMT
> -----END PGP SIGNATURE-----
>
>
>  ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação, como
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio
> aviso.
> ---------------------------------------------------------------------
> Sair da lista: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
>
>
>
>
>  *Yahoo! Grupos, um serviço oferecido por:*  PUBLICIDADE
>  
> <http://br.ard.yahoo.com/SIG=12fu5ith6/M=393477.7870451.8719931.2369893/D=brclubs/S=2137111254:HM/Y=BR/EXP=1138770315/A=3254979/R=0/id=noscript/SIG=12k5j3olb/*http://www.momentumquiz.com.br/index.php?md5ref=372BBEE98E9544bd8B2F9E87847EEEBE_3>
> ------------------------------
> *Links do Yahoo! Grupos*
>
>    - Para visitar o site do seu grupo na web, acesse:
>    http://br.groups.yahoo.com/group/shell-script/
>
>    - Para sair deste grupo, envie um e-mail para:
>    address@hidden<address@hidden?subject=Unsubscribe>
>
>    - O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
>    Serviço do Yahoo! <http://br.yahoo.com/info/utos.html>.
>
>


--
Tiago B Peczenyj
Linux User #405772

echo 435991959574767208964049173891616024402182829083447460457482P | dc


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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]