Necesito ejecutar tareas que son iniciadas por un usuario. Intenté varios comandos como
xlsclients
Este comando hace casi lo que necesito, pero es la falta de información del usuario. Enumera todas las tareas (en realidad Windows) a la vez sin nombre de usuario.
ps aux -u *username*
Esto proporciona procesos por usuario pero también incluye todas las tareas del sistema, como:
/sbin/getty -8 38400 tty4
/usr/sbin/gpm -m /dev/input/mice -t exps2
etc.
Así que quiero enumerar las tareas ejecutadas por un usuario pero excluyendo las relacionadas con el sistema.
Respuestas:
Si desea procesos no huérfanos :
pgrep -u "$USER"
imprime los PID iniciados por el usuario actualpgrep -u "$USER" -P 1
imprime los PID huérfanos iniciados por el usuario actualCombinando estos puede obtener los PID no huérfanos iniciados por el usuario actual:
Se puede pasar la lista resultante en
ps
,top
u otros programas para obtener los detalles de cada proceso.fuente