msoliver
(usa Debian)
Enviado em 06/07/2016 - 19:08h
sergio.mso escreveu:
MARCELO,
MUITO OBRIGADO
MAIS UMA COISA
APARECEU PARA MIM DOIS ARQUIVOS NESTE FORMATO ABAIXO COMEÇANDO AES- EU CONSIGO USAR ESTE SCRIPT QUE VOCÊ ME PASSOU?
ARQUIVO1.TXT
AES-00001: FARMACEUTICA
AES-00002: INDUSTRIA
AES-00003: COMERCIO
AES-00004: ACESSORIOS
AES-00005: EMBALAGEMS
AES-00006: ATACADO
AES-00007: LOJAS E ATACADOS
ARQUIVO2.TXT
AES-00001:
AES-00002:
AES-00003:
AES-00004:
AES-00005:
AES-00006:
AES-00007:
----------------------------------------------------------------------
Boa noite sergio.mso.
Funciona sim, só "não pega" nada pq os dois arquivos tem a mesma quantidade de registros.....
Explicando o script:
Lê
linha a linha de ARQUIVO1
Usa como separador de campo, ("IFS") ": " (dois pontos mais espaço)
Atribui o valor do CAMPO1 a VAR "C1" e do CAMPO2 a VAR "C2"
Procura por "C1" no ARQUIVO2
egrep -o "$C1" FILE02
TESTA
Se o
TEST for
FALSO (NãO encontrar o que procurou...)
[ $(egrep -o "$C1" FILE02) ] ||
MOSTRA o resultado
awk -F": " '/^'$C1':/ {print $0}' FILE01
done < FILE01
Enfim, para usar em arquivos com outro "IFS", é só trocar no script.
Por exemplo, se o IFS é #, faça:
while IFS="#" read -r C1 C2;do
[ $(egrep -o "$C1" FILE02) ] || { awk -F": " '/^'$C1':/ {print $0}' FILE01 ; }
done < FILE01
É isso . . .
Não esqueça de marcar como a MELHOR RESPOSTA . . . :)
Att.:
Marcelo Oliver