Você pode usar lsof -p P1
e lsof -p P2
para ver os descritores de arquivos abertos pelos dois processos. Então você pode ver a lista de sockets e pipes que eles abrem, e ver se algum deles tem o mesmo ID.
imac:barmar $ sleep 100 | sleep 100 &
[1] 51885
imac:barmar $ jobs -l
[1]+ 51884 Running sleep 100
51885 | sleep 100 &
imac:barmar $ lsof -p 51884 | grep -i pipe
sleep 51884 barmar 1 PIPE 0x491a6929f9ea1ca9 16384 ->0x491a6929f9e9fae9
imac:barmar $ lsof -p 51885 | grep -i pipe
sleep 51885 barmar 0 PIPE 0x491a6929f9e9fae9 16384 ->0x491a6929f9ea1ca9
Observe que o ID de destino do canal no primeiro processo é o mesmo que o ID de origem do canal no segundo processo. Isso indica que eles são as duas extremidades do mesmo tubo.