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 to do 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.
I know the sysproc library supports very good interface for this kinds of jobs.
but, sysproc doesn't support aix platforms.
$> rake test
(in /home/jykim/sys-proctable-0.8.0)
checking for rb_pid_t in ruby.h... yes
This platform not currently supported. Exiting...
.....
I need pure ruby lang based libraries or all platforms ported things 
gamsa haeyo~
2009. 03. 24, 오후 6:18, Heesob Park 작성:
···
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 to do
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
Kill Process by it's name - Ruby - Ruby-Forum
Regards,
Park Heesob
***************************
DSLab, CQ 김준영 드림
(02-2082-1091)
***************************
Since you seem to have access to an aix machine, I'm pretty sure it'll be easy to add aix support. I doubt the calls needed are much different than the other unix-based machines.
···
On Mar 24, 2009, at 04:50, Jun Young Kim wrote:
I know the sysproc library supports very good interface for this kinds of jobs.
but, sysproc doesn't support aix platforms.
$> rake test
(in /home/jykim/sys-proctable-0.8.0)
checking for rb_pid_t in ruby.h... yes
This platform not currently supported. Exiting...
.....
I need pure ruby lang based libraries or all platforms ported things 
yes, I also believe that is the best option for me 
anyway, thanks for all.
2009. 03. 25, 오전 3:37, Eric Hodel 작성:
···
On Mar 24, 2009, at 04:50, Jun Young Kim wrote:
I know the sysproc library supports very good interface for this kinds of jobs.
but, sysproc doesn't support aix platforms.
$> rake test
(in /home/jykim/sys-proctable-0.8.0)
checking for rb_pid_t in ruby.h... yes
This platform not currently supported. Exiting...
.....
I need pure ruby lang based libraries or all platforms ported things 
Since you seem to have access to an aix machine, I'm pretty sure it'll be easy to add aix support. I doubt the calls needed are much different than the other unix-based machines.
***************************
DSLab, CQ 김준영 드림
(02-2082-1091)
***************************
Jun Young Kim wrote:
yes, I also believe that is the best option for me 
anyway, thanks for all.
2009. 03. 25, 오전 3:37, Eric Hodel 작성:
I know the sysproc library supports very good interface for this
kinds of jobs.
but, sysproc doesn't support aix platforms.
<snip>
I don't have access to an AIX machine, but this might get you started on
a port for sys-proctable:
http://cpansearch.perl.org/src/DURIST/Proc-ProcessTable-0.45/os/
There appear to be 2 variants for AIX, so I'm not sure which one Dan is
using, but perhaps they'll give you some ideas.
Regards,
Dan
···
On Mar 24, 2009, at 04:50, Jun Young Kim wrote: