난 달린다iotop
우선순위를 낮춰야 할 경우를 대비해 디스크가 많은 프로그램을 확인하세요. 일반적으로 이것으로 충분하지만 iotop
스레드 ID(TID)만 표시됩니다. 때로는 어떤 프로세스가 담당하는지에 대한 자세한 정보를 찾을 수 있도록 프로세스 ID(PID)를 알고 싶습니다.
불행하게도 ps
TID(SPID, LWP라고도 함)를 표시하는 것이 가능하지만 PID 목록과 마찬가지로 TID 목록을 가져오는 플래그가 없습니다 --pid
. 내가 할 수 있는 일은 TID를 나열한 다음 grep
출력을 나열하는 것뿐입니다. 예를 들어 스레드 ID가 792인 경우 다음을 수행할 수 있습니다.
$ ps -eLf | grep ' 792 '
효과는 꽤 좋은데 좀 촌스럽네요.
더 좋은 방법이 있나요?
답변1
언제든지 다음과 같이 할 수 있습니다.
ps -eLo pid= -o tid= | awk '$2 == 792 {print $1}'
리눅스의 경우:
$ readlink -f /proc/*/task/792/../..
/proc/300
또는 다음을 사용하여 zsh
:
$ echo /proc/*/task/792(:h:h:t)
300