2016-11-06 30 views
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

This blog post解釋瞭如何使用看似未記錄的方法獲得真實路徑proc_pidpath。活動監視器也會正確顯示ruby,這對我來說足夠接近以找到並殺死相關進程。

如何在不編譯我自己的程序的情況下從命令行獲取此信息?

回答

0

,幾乎實現了我的目標不完整的答案一直是:

fuser $(which ruby) | xargs ps 

這讓我確定哪些流程從一個特定ruby開始,但可以包括誤報(例如,附加的調試也將是上市)。

相關問題