[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Ajuda
From: |
Gentil de Bortoli Júnior |
Subject: |
Re: [shell-script] Ajuda |
Date: |
Wed, 13 Oct 2004 13:53:34 -0300 |
User-agent: |
Mozilla Thunderbird 0.8 (X11/20040913) |
Olá, Luciano.
Não sou expert no assunto mas, mesmo assim, vou tentar ajudar.
Em primeiro lugar, creio que a forma de redirecionamento de saída que
você está usando (">") não é a mais adequada, uma vez que assim você
estará sempre apagando o conteúdo do arquivo3 e, então, o resultado lá
dentro será unicamente o que foi obtido no último passo do for. Você
deve fazer um "append". Para isso, ao invés de ">", utilize ">>".
Em segundo lugar, se você quer mesmo que cada linha do arquivo1 seja
comparada com todas as linhas do arquivo2, acho que sua lógica deveria
ser diferente.
Talvez assim:
for linha1 in `cat arquivo1`; do
for linha2 in `cat arquivo2`; do
echo "Comparando ${linha1} com ${linha2}."
if [ ${linha1} == ${linha2} ]; then
echo "Achei!"
fi
done
done
Desculpe se não compreendi corretamente o seu objetivo.
[]s
Gentil.
Luciano Depierri wrote:
Pessoal,
Estou precisando fazer um grep, ou seja, cada linha do arquivo1, seja comparada
com todas as linhas do arquivo2 e as ocorrências seja copiada no arquivo3.
Estou fazendo da seguinte maneira:
for i in `cat arquivo1`;
do grep $i arquivo2 > arquivo3;
done;
Mas apenas o grep está comparando apenas a última linha do arquivo 2. Alguem
saberia o que está errado?
Agradeço antecipadamente.
Luciano Depierri