Respuestas:
Usar pgrep?
pgrep -U xxx yyy
devuelve solo el pid (o pids, si coincide más de un proceso).
Usa grep?
ps -u xxx | grep yyy | grep -v grep
Usted usa comm
para encontrar PID comunes a ambas condiciones:
ps -u xxx | sort > /tmp/ps-uxxx
ps -C yyy | sort > /tmp/ps-Cyyy
comm -1 -2 /tmp/ps-uxxx /tmp/ps-Cyyy
Con bash, puede usar la sustitución de procesos para evitar la necesidad de archivos temporales:
comm -1 -2 <(ps -u xxx | sort) <(ps -C yyy | sort)
comm
hace. Pero lo uso solo una vez al año. No es intuitivo para mí. Supongo que todos los que lo usan a diario lo ven diferente. Son buenas razones por las que existe pgrep. Desafortunadamente, pgrep no está disponible en mi contexto ... Pero ahora está resuelto. La raíz del problema es (según mi punto de vista), que necesito soportar el sistema operativo muy antiguo sin pgrep.