我希望能够在命令行中获取每个进程的线程数,并获得通过活动监视器看到的完全相同的数字。
目前,IntelliJ IDEA 进程 (PID 5235) 有 266 个线程。我想通过命令行获取这个数字。
我试过了
lsof -p 5235 | wc -l
有什么建议么?
答案1
请尝试以下操作:
NUM=`ps M <pid> | wc -l` && echo $((NUM-1))
我们从行数中减去 1,因为ps
在第一行输出了一个 HEADER。
答案2
这也有效:
ps M <pid> | wc -l
答案3
还可以使用tail
命令来截断ps M
输出中的标题行,例如:
ps M <pid> | tail -n+2 | wc -l
其中-n+2
选项的意思是“获取从第二行开始的所有行”