Tente
#!/usr/bin/bash
rm "$3"
while IFS="" read -r inputline
do
grep -Fq "$inputline" "$1" && echo "$inputline" >> "$3"
done < "$2"
Eu tenho o script abaixo para encontrar itens ausentes do fileA comparado ao fileB e gravar no fileC
script.sh fileA fileB fileC
script.sh:
rm $3
while IFS="" read -r inputline; do
fgrep -q \""$inputline"\" $1
if [ 1 -eq $? ]; then
echo \""$inputline"\" >>$3
fi
done <$2
Eu vejo tudo em fileB sendo despejado para fileC, eu estou faltando alguma coisa básica. (aix 6, bash)
ps: arquivos têm espaços à direita e isso é importante na comparação
Tags test return-status