module PS
Public Instance Methods
VERSION()
click to toggle source
# File lib/ps-ruby/version.rb, line 4 def VERSION "0.0.4" end
attrs()
click to toggle source
# File lib/ps-ruby/ps-ruby.rb, line 70 def attrs # ["USER", "PID", "%CPU", "%MEM", "VSZ", "RSS", "TT", "STAT", "STARTED", "TIME", "COMMAND"] return @ps_attrs if @ps_attrs @ps_attrs = raw_aux.split("\n").map{|x| x.split(/\s+/) }.shift end
find_processes(name)
click to toggle source
# File lib/ps-ruby/ps-ruby.rb, line 62 def find_processes(name) find_processes_by("COMMAND", name) end
find_processes_by(attr_name, value)
click to toggle source
# File lib/ps-ruby/ps-ruby.rb, line 66 def find_processes_by(attr_name, value) get_all_processes.find_processes_by(attr_name, value) end
get_all_processes()
click to toggle source
# File lib/ps-ruby/ps-ruby.rb, line 76 def get_all_processes table = raw_aux.split("\n").map{|x| x.split(/\s+/) } attrs = table.shift is_percent = ["%CPU", "%MEM"].map{|x| attrs.index(x) } table = table.reduce(PsProcessList.new) {|s, x| if x.size > attrs.size x = x[0..(attrs.size-2)] + [x[(attrs.size-1)..-1].join(" ")] end is_percent.each{|k| x[k] = x[k].to_f } s << PsProcess[attrs.zip(x)] } table end
raw_aux()
click to toggle source
# File lib/ps-ruby/ps-ruby.rb, line 90 def raw_aux %x{ps aux} end
simple_display(name = "", limit_process_name_len=30)
click to toggle source
# File lib/ps-ruby/ps-ruby.rb, line 58 def simple_display(name = "", limit_process_name_len=30) find_processes(name).simple_display(limit_process_name_len) end