Bem, no Linux, você pode verificar /proc/PID/exe
:
(p=$BASHPID; /bin/ls -l /proc/$p/exe; exec /bin/ls -l /proc/$p/exe)
... 0 Jan 17 10:34 /proc/17816/exe -> /bin/bash
... 0 Jan 17 10:34 /proc/17816/exe -> /bin/ls
Mas eu não consigo ver para que serve isso, o shell não vai ler / gravar no pipe antes do exec
, então o pipeline funciona perfeitamente, mesmo que haja uma pequena janela de tempo antes do exec
. E realmente, é uma janela de tempo pequena , eu não ficaria surpreso se o exec
já tivesse acontecido quando você pudesse até mesmo chegar lá para verificar qual programa está sendo executado.