Você precisa classificar a saída para que o comando uniq
possa funcionar. Veja a man page:
Filter adjacent matching lines from INPUT (or standard input), writing to OUTPUT (or standard output).
Assim, você pode canalizar a saída para sort
primeiro e, em seguida, uniq
. Ou você pode usar a capacidade de sort
de executar o tipo e unificar todos juntos da seguinte forma:
$ ...your command... | sort -u
Exemplos
classificar | uniq
$ cat <(seq 5) <(seq 5) | sort | uniq
1
2
3
4
5
sort -u
$ cat <(seq 5) <(seq 5) | sort -u
1
2
3
4
5
Seu exemplo
$ curl -silent http://api.openstreetmap.org/api/0.6/relation/2919627 http://api.openstreetmap.org/api/0.6/relation/2919628 \
| grep node | awk '{print $3}' | sort -u
ref="1828989762"
ref="1829038636"
ref="1829656128"
ref="1865479751"
ref="451116245"
ref="451237910"
ref="451237911"
ref="451237917"
ref="451237920"
ref="451237925"
ref="451237933"
ref="451237934"
ref="451237941"
ref="451237943"
ref="451237945"
ref="451237947"
ref="451237950"
ref="451237953"