ruby系统调用正在退出进程

时间:2011-09-08 15:40:21

标签: ruby

我试图这样做:

current_size = exec("ps -o rss $(pgrep rake)")

当它运行时,我得到:

RSS  2784   560   568   788

但过程退出。

知道我做错了什么?

我也尝试过:

 exec("ps -o rss #{Process.pid}")

同样的问题

1 个答案:

答案 0 :(得分:3)

来自“ri Kernel.exec”

Replaces the current process by running the given external _command_

您的进程已被ps进程替换,后者打印出数据然后退出。

你可能想要内核。

 Returns the standard output of running _cmd_ in a subshell. The
 built-in syntax +%x{...}+ uses this method. Sets +$?+ to the
 process status.

使用%x {}似乎是更好的选择。

current_size = %x{ ps -o rss $(pgrep rake) }