我在 ruby 中有一个守护进程,我正在尝试执行一个 bash 命令并将其输出到程序中。我可以使用 ruby 中的反引号功能来执行 bash 命令,例如ls -a
. 但由于top
命令是实时的,我无法将命令的输出输入到我的程序中。帮我。
为什么我需要实时数据是因为我试图监视所有进程并在达到内存限制或其他情况时将其终止。我不想做top -bn 1
require 'rubygems'
require 'daemons'
options = {
:backtrace => true,
:app_name => 'limits_logger',
:log_dir => '/home/charizard/',
:log_output => true
}
Daemons.daemonize(options)
puts "#{Time.now} - started #{self}."
puts %x{ top -b }