首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将PID作为输入并获取与每个PID相关联的线程并将其写入文件的Shell脚本。有人可以帮助或指导吗?

将PID作为输入并获取与每个PID相关联的线程并将其写入文件的Shell脚本。有人可以帮助或指导吗?
EN

Stack Overflow用户
提问于 2017-10-25 19:00:44
回答 3查看 108关注 0票数 2

PID作为输入并获取与每个PID关联的线程并将其写入文件的Shell脚本。有人可以帮助或指导吗?

我正在使用top -H -b -n 1 | grep java > /path/top.log来捕获PID,并将它们添加到top.log文件中

此外,我认为top -H -p <PID>可以帮助我获得与特定PID相关的线程。

如何使用shell脚本将其自动化?

EN

回答 3

Stack Overflow用户

发布于 2017-10-25 19:09:14

代码语言:javascript
运行
复制
ps -p <PID> -o cmd

查看pid:

代码语言:javascript
运行
复制
pgrep java
票数 2
EN

Stack Overflow用户

发布于 2017-10-25 19:20:32

根据名称获取进程名称:

代码语言:javascript
运行
复制
pgrep java

使用/proc文件系统获取线程(在linux内核上)

代码语言:javascript
运行
复制
ls /proc/$(pgrep java)/task

如果您有多个java PID,请使用for循环:

代码语言:javascript
运行
复制
for i in $(pgrep java); do echo $i; ls /proc/$i/task; echo; done

信息:man 5 proc

/proc/pid/task (从Linux2.6.0-test6开始)

这是一个为进程中的每个线程包含一个子目录的目录。

票数 2
EN

Stack Overflow用户

发布于 2017-10-25 19:55:01

我正在使用top -H -b -n 1 | grep java > /path/top.log来捕获PID并将它们添加到top.log文件中

如果您只想要所有的java线程:ps -LCjava

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46930679

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档