Muitos emuladores de terminal (incluindo rxvt, xterm, gnome-terminal e konsole; não testei com o roxterm) definem a variável de ambiente WINDOWID
para o id da janela em que o subprocesso (por exemplo, o shell) foi iniciado. Então, no Linux,
</proc/$pid/environ tr \0 \n | sed -n 's/^WINDOWID=//p'
informa em qual janela $pid
está sendo executada.
Isso não funcionará se o processo tiver migrado entre as janelas, por exemplo, se estiver sendo executado na tela ou se você tiver migrado as guias entre as janelas.