免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2601 | 回复: 2
打印 上一主题 下一主题

[分享]杀连接已经超时了的进程的脚本[分享] [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2002-04-18 01:13 |只看该作者 |倒序浏览
[这个贴子最后由bear在 2002/04/18 01:07pm 编辑]

今天遇到下面这个问题,在朋友们的帮助下终于成功了,在此表示感谢,同时把脚本贴出来
希望对大家有帮助,也希望朋友们可以优化这个脚本。

公司是做软件开发的,程序员们的程序都要连接数据库进行调试。可是他们的程序死了以后
数据库还是连接的,这样一来系统的资源(内存)就会被占用被耗尽,于是我就要经常去杀死已经死了的进程,可是这样很麻烦,我想编一个shell脚本,可不知道如何下手,就请大虾们帮帮忙了:-)
例如下面这些 323 325 。。。。。。。。。335 337 这些进程不能被杀,主要是要杀后面有(LOCAL=NO)的进程。  我因该怎么做呀?
oracle 14527     1  0 10:22:39 ?        0:01 oraclextecs90 (LOCAL=NO)
oracle 16865     1  0 11:01:46 ?        0:06 oraclextecs90 (LOCAL=NO)
oracle 24346     1  0 00:00:52 ?        0:01 oraclextecs90 (LOCAL=NO)
oracle 24802     1  0 13:19:32 ?        0:03 oraclextecs90 (LOCAL=NO)
oracle   323     1  0   Apr 12 ?        0:01 ora_pmon_xtecs90
oracle   325     1  0   Apr 12 ?        1:35 ora_dbw0_xtecs90
oracle   327     1  0   Apr 12 ?        2:45 ora_lgwr_xtecs90
oracle   329     1  0   Apr 12 ?        2:45 ora_ckpt_xtecs90
oracle   331     1  0   Apr 12 ?        1:54 ora_smon_xtecs90
oracle   333     1  0   Apr 12 ?        0:00 ora_reco_xtecs90
oracle   335     1  0   Apr 12 ?        0:00 ora_s000_xtecs90
oracle   337     1  0   Apr 12 ?        0:00 ora_d000_xtecs90
oracle 14229     1  0 10:17:29 ?        0:00 oraclextecs90 (LOCAL=NO)
oracle 23079     1  0 22:58:31 ?        0:00 oraclextecs90 (LOCAL=NO)
oracle  1117     1  0 14:45:31 ?        0:47 oraclextecs90 (LOCAL=NO)
问题的补充:要杀连接已经超时了的进程(时间大于30分钟),而不是要杀死所有的LOCAL=NO进程。
                    
终于成功了!!!!!!!!!!!!!!!!!!
脚本如下:
ps -e -o pid -o etime -o args|grep LOCAL=NO>;/tmp/tmpfile
cat /tmp/tmpfile|while read LINE
do
TIME=`echo $LINE|awk '{print $2}'`
TIME=`echo $TIME|awk -F: '{print $1}'`
if [ $TIME -gt 30 ]
then
echo $LINE >;>; /tmp/tmpflie2
fi
done
cut -c 1-5 /tmp/tmpfile2 |xargs -t -n1 kill -9
rm -f /tmp/tmpfile
rm -f /tmp/tmpfile2
然后把这个脚本写进crontab,让系统每30分钟运行一次。
详细过程在:
http://www.chinaunix.net/cgi-bin/bbs/topic.cgi?forum=11&topic=207&show=0

感谢 cpss  三少爷 kiss007 阿骁 跳舞牛仔

论坛徽章:
0
2 [报告]
发表于 2002-04-18 09:19 |只看该作者

[分享]杀连接已经超时了的进程的脚本[分享]

boycw,能否对语句一写注释,大家更容易读懂!?

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
3 [报告]
发表于 2002-04-18 13:10 |只看该作者

[分享]杀连接已经超时了的进程的脚本[分享]

本帖放入精华区,为大家更好了解内容,所以我修改了主题

原主题:“感谢 cpss  三少爷 kiss007 阿骁 跳舞牛仔”
作者:  “ boycw”
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP