具有最大文件描述符的进程 - 详细说明进程详细信息

具有最大文件描述符的进程 - 详细说明进程详细信息

我试图找到具有最大文件描述符的进程
我找到了这个解决方案这里

lsof -Fpcn | awk '
 /^p/ { pid=substr($0,2) }
 /^c/ { cmd=substr($0,2) }
 /^n/ { fd[cmd"["pid"]"]++ }
 END  { for (cc in fd) printf("%-20s %i\n",cc,fd[cc]) } ' | sort -n -k 2

这组命令运行良好,
我能够过滤掉少于 15 个描述符的进程,
我试图详细说明进程详细信息,
所以我想从 ps 中提取有关进程的信息,例如:

  ps -ef  | grep 30394

我能够像这样进行过滤:

 END  {
           for (cc in fd) {
                 if(fd[cc] > 15){
                         printf("%-20s %i\n",cc,fd[cc])
                         }
                 }

      } ' | sort -n -k 2

但我不知道如何获取进程信息。

当我尝试像这样合并 ps -ef 时:

 printf("%-20s %i    process details: %s  \n",cc,fd[cc] , "$(ps -ef | grep fd[cc])" ) ;

它只是打印出来:

lsof[7626]           17    process details: $(ps -ef | grep fd[cc])

相关内容