Parece que estou sentindo falta de algo ofuscantemente óbvio, mas ainda assim:
ps -f -u myuser --ppid 1
Parece apenas dar uma olhada no pai pid do processo e retornar todos os processos que tenham pai pid de 1 - mesmo quando o usuário não estiver myuser.
O -usozinho funciona corretamente (selecionando apenas processos de myuser):
ps -f -u myuser
o que estou perdendo? Existe alguma maneira embutida de filtrar por várias condições ps?
EDIT: Minha solução atual:
ps -f -p $(join <(ps h --ppid 1 -o pid | sort) <(ps h -u myuser -o pid | sort))