我正在尝试使用ps -o命令来获取与某个名称匹配的进程的特定信息。然而,我在这方面遇到了一些问题,当我尝试使用它来获取所有进程时,就像这样,它只返回普通ps -ef
返回的一个子集(它不会返回几乎相同数量的结果,所以它不会返回所有正在运行的进程)
ps -ef -o pid,time,comm
我想尝试类似这样的东西(如下所示),但合并ps -o以仅从其中获取特定信息(仅PID)
ps -ef |grep `whoami`| grep firefox-bin
任何关于如何正确完成此操作的建议都将不胜感激,谢谢
发布于 2010-09-25 04:56:31
这将按名称获取进程的PID:
pidof name
然后您可以将其重新插入ps以获取更多详细信息:
ps -p $(pidof name)
发布于 2012-11-05 22:25:53
这有点老了,但我猜您需要的是: ps -o pid -C PROCESS_NAME,例如:
ps -o pid -C bash
编辑:根据您期望的输出类型,pgrep
会更优雅。据我所知,这是特定于Linux的,并产生与上面类似的输出。例如:
pgrep bash
发布于 2015-04-28 22:23:20
ps -fC PROCESSNAME
ps和grep是一种危险的组合-- grep尝试匹配每一行上的所有内容(因此非常常见: grep、-v、grep、hack)。ps -C不使用grep,它使用流程表进行精确匹配。因此,你会得到一个准确的列表: ps -fC sh,而不是用sh查找每一个进程。
https://stackoverflow.com/questions/3790895
复制相似问题