가장 큰 파일 설명자를 가진 프로세스 - 세부사항 프로세스 세부사항

가장 큰 파일 설명자를 가진 프로세스 - 세부사항 프로세스 세부사항

가장 큰 파일 설명자가 있는 프로세스를 찾으려고 노력 중입니다.
이 솔루션을 찾았습니다.여기

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])

관련 정보