lsof debe dar todos los archivos abiertos para un conjunto de pids

Tengo 30 instancias de un proceso que se ejecuta en un servidor y quiero registrar archivos abiertos para cada proceso para su análisis.

Ejecuté el siguiente comando:

* ps auwwx | grep PROG_NAME | awk '{print $2}' | xargs lsof -p | less

Se queja de que,"lsof: error de estado en: no existe tal archivo o directorio"

Sin embargo, si corrolsof -p < pid > Me da la lista de archivos abiertos para ese proceso. ¿Cómo puedo obtener una lista de todos los archivos abiertos para las 30 instancias del proceso en una máquina de FreeBSD?

Además, no quiero que las bibliotecas compartidas aparezcan en la lista. Si lo hago-d "^txt" no está mostrando algunos otros archivos db que quiero que se muestren. ¿Hay alguna otra manera de grep salir de los archivos .so?

Respuestas a la pregunta(2)

Su respuesta a la pregunta