Opa.. cheguei agora aqui..

hehehe eh facinho brother..
vamos la..

Depende da faixa de valores que vc tem dentro do arquivo.. mas vou dar
exemplo do que criei aqui..

[EMAIL PROTECTED]:/home/rodrigo]$ cat num
A   3   3   4   5
B   2   3   4   5
C   4   4   5   6
D   4   5   6   4
E   2   3   3   2
F   1   3   2   5
G   9   1   7   9


#!/bin/sh
# [EMAIL PROTECTED]

arquivo="num"           # NOME DO ARQUIVO
tamanho_final="9"    # VALOR MAXIMO DENTRO DO ARQUIVO

for ((tamanho_inicial = 1; tamanho_inicial < $[tamanho_final + 1];
tamanho_inicial++))
 do
  cat num |awk '/'$tamanho_inicial'.*'$tamanho_inicial'/' >> resultado
 done

cat resultado |sort|uniq

Que finalmente gera..

[EMAIL PROTECTED]:/home/rodrigo]$ sh s.sh
A   3   3   4   5
C   4   4   5   6
D   4   5   6   4
E   2   3   3   2
G   9   1   7   9

Mas tem um problema aqui.. por exemplo.. se voce tiver valores maiores que
10 já nao vai dar para comparar, porque ele esta comparando caracter por
caracter.. ou seja.. voce teria

X   1   3   5   15

Ele acharia que eh igual porque ele irá procurar caracter a caracter e nao
cadeia de caracteres..
Posta ai pra gente se vc tem numeros maiores que 9 que tentaremos achar uma
outra solucao..

abs!



2008/7/4 Gunther Furtado <[EMAIL PROTECTED]>:

> Olá,
>
> O tópico recente que tratava do awk me deixou curioso para saber se
> ele resolverá um problema para mim, com a ajuda de vocês, é claro:
>
> A   3   3   4   5
> B    2   3   4   5
> C   4   4   5   6
> D   4   5   6   7
>
> Dado um arquivo "entradas" que contenha a informação acima, eu
> gostaria de imprimira as linha que contenham qualquer valor repetido,
> nem só o "3", nem só o "4". O resultado que espero é:
>
> $ awk '/<alguma mágica>/ { print $0 }' entradas
> A   3   3   4   5
> C   4   4   5   6
>
> ao invés de:
>
> $ awk '/3.*3/ { print $0 }' entradas
> A   3   3   4   5
>
> $ awk '/4.*4/ { print $0 }' entradas
> C   4   4   5   6
>
> O arquivo real é um pouco maior (47x15), com uns 700 valores
> diferentes e preciso de uma maneira rápida de descobrir se há valores
> que se repetem em qualquer de suas linhas.
>
> Gracias,
>
> --
> Gunther Furtado
> [EMAIL PROTECTED]
>
>
> --
> To UNSUBSCRIBE, email to [EMAIL PROTECTED]
> with a subject of "unsubscribe". Trouble? Contact
> [EMAIL PROTECTED]
>
>

Responder a