Você pode, por exemplo, usar isto:
$ awk -v RS="|" '{printf $0 (NR%3?RS:"\n")}' file
name1|number1|id1
name2|number2|id2..
Explicação
-
-v RS="|"
define o separador de registro como|
. -
printf $0 (NR%3?RS:"\n")
imprime a linha completa com uma nova linha, caso o número de registros seja múltiplo de 3.