ps
não possui filtros muito flexíveis. Faça com que exiba mais do que o necessário, especifique o formato explicitamente e filtre a saída. O awk geralmente funciona bem para essa tarefa.
ps -o pid= -o ppid= -o user= -o comm= -o args= |
awk -v uid="$(id -un myuser)" '$2 == 1 && $3 == uid'
Os sinais de igual após os nomes das colunas suprimem a linha do cabeçalho. Se você quiser ver as linhas de cabeçalho, faça o filtro imprimir a primeira linha inalterada:
ps -o pid -o ppid -o user -o comm -o args |
awk -v uid="$(id -un myuser)" 'NR == 1 || ($2 == 1 && $3 == uid)'
Se você quiser fazer algum processamento automatizado, precisará remover os dados apenas para os PIDs.
ps -o pid= -o ppid= -o user= |
awk -v uid="$(id -un myuser)" '$2 == 1 && $3 == uid {print $1}'