Hi,

2009/3/24 Jun Young Kim <jykim / altibase.com>:
> Hi, folks.
>
> first )
> I have a question to get a process id by using it's name for all platforms.
>
> second)
> If I want to kill some processes by it's name, are there efficient way todo
> it for all platform?
> For a solution for this problem, I am now using the following way ;)
>
> ex)
>
> lines = $x{ ps -Au${ENV['USER']} }.split("\r?\n")
>
> lines.each do |line|
>    if line.match(process_name)
>        pids << line.strip.split[0]
>    end
> end
>
> count = 0
> pids.each do |pid|
>    %x{ kill #{pid} }
>
>    count += 1 if $?.existstatus.zero?
> end
>
> print "total terminated processes : %d" % count
>
> but, this way depends on only unix platforms.
> moreover, I am not sure that all platform's output of "ps -Au" are same.
>
>
Try sys-proctable gem.

http://rubyforge.org/docman/view.php/610/1566/sys_proctable.html
http://www.ruby-forum.com/topic/139227#618978

Regards,

Park Heesob