码迷,mamicode.com
首页 > 系统相关 > 详细

ruby中执行shell命令找到进程并kill掉

时间:2016-08-27 16:45:16      阅读:198      评论:0      收藏:0      [点我收藏+]

标签:

shell命令获得进程id的方法有三种:

1.
ps -A |grep cmdname| awk ‘{print $1}‘

2.

 pidof cmdname

3.

pgrep cmdname

ruby中怎么做呢?

ruby中有三种方式执行shell命令:

%x: 执行命令并返回执行结果

exec:执行命令并退出。

system:执行命令并返回true或false。

所以这里要使用%x来取得返回结果。

 比如要killsublime:

result = %x[pgrep sublime]

%x[sudo kill -9 #{result}]

当然用一行命令也可以:
system("ps -ef | grep sublime | grep -v grep | awk ‘{print $2}‘ | xargs -n1 kill -9")

ruby中执行shell命令找到进程并kill掉

标签:

原文地址:http://www.cnblogs.com/limx/p/ruby.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!