0

进程可以使用该setproctitle方法在运行时更新它们的“命令”字段。这将改变进程在几个命令中的显示方式:

$ ps 33933
  PID   TT  STAT      TIME COMMAND
33933 s000  S      0:00.52 spring server | todo-mvc | started 45 hours ago

但是,spring不是可执行文件,这实际上是一个 ruby​​ 脚本,所以我要查找的输出是/Users/rpatterson/.rvm/rubies/ruby-2.3.1/bin/ruby.

这篇博文解释了如何使用看似未记录的方法获得真实路径proc_pidpath。活动监视器也ruby正确显示,这足以让我找到并杀死相关进程。

如何在不编译我自己的程序的情况下从命令行获取这些信息?

4

1 回答 1

0

实际上实现我的目标的不完整答案是:

fuser $(which ruby) | xargs ps

这使我能够识别哪些进程从特定的 开始ruby,但可能包含误报(例如,还会列出附加的调试器)。

于 2016-11-15T00:56:53.207 回答