xwininfo -tree -root | grep -v "has no name" | grep -v childÉ um pouco diferente do que você pediu: em vez de listar processos, ele lista janelas. Se você está procurando uma lista de números de identificação de processo, isso não realiza a tarefa. Se você está procurando uma lista do que está sendo executado, isso acontece.
Obviamente, essa abordagem não mostrará o nome de nenhum programa que tenha "filho" como parte de seu nome. Ainda assim, se você está procurando uma opção rápida e fácil que atenda à maioria das finalidades, essa pode ser uma delas.
Ah, e, a propósito, há vários outros opções para "xwininfo" , como poder especificar o nome de apenas uma janela (em vez de especificar a janela "root").