O comando comm
é o que você precisa:
$ A=$(seq 5)
$ B=$(seq 3)
$ comm -23 <(sort <<< "$A") <(sort <<< "$B")
4
5
Aqui está um método que não requer que a entrada seja classificada. Este é um idioma comum no awk que lê o primeiro arquivo na memória e, em seguida, faz alguma filtragem no segundo arquivo com base no primeiro. Vamos tentar com dados randomizados
$ A=$(seq 5 | sort -R); echo "$A"
3
5
1
2
4
$ B=$(seq 3 | sort -R); echo "$B"
2
1
3
Esperamos que a saída seja 5 e depois 4:
$ awk 'NR==FNR {b[$1]=1; next} !($1 in b) {print}' <(echo "$B") <(echo "$A")
5
4