找回密码
 用户注册

QQ登录

只需一步,快速开始

查看: 3875|回复: 0

Linux环境下VMware使用之实用杀进程tool

[复制链接]
发表于 2012-4-5 13:33:02 | 显示全部楼层 |阅读模式
        在集成开发环境中,由于硬件的成本高,所以往往需要几个开发人员共享一台硬件设备。
        一个典型的应用就是:两三个人共享一台设备Linux Server,然后使用VMware安装自己的调试运行环境,大家共用一个用户名(一般不是root)登陆。由于硬件设备性能瓶颈所限,同一时刻只能有一个虚拟机在运行(理论上可以同时跑多个虚拟机,但是速度慢,性能跟不上,无法实际应用)。当前用户登陆使用该硬件设备时,需要杀掉别的同事遗留的进程(理论上应该进程的启动者来清理,但可能常常被忘记,类似于上了厕所忘了冲水),这时候当前用户就需要用命令“ps -ef|grep vmware”查看遗留的进程号,然后用命令“kill -9 processid”一个个来杀掉。经常这么做,很繁琐费事,于是自己写了一个tool,测试了一下,很好用,特地分享一下。


源码如下


#!/bin/kshif [[ $1 == "" ]]then        print "ko username, please input username!"        exit 1fiusername=$1print "\nBefore kill:\n"ps -ef|grep vmwareprint "\nkilling ..."echo > .tmp.txtps -ef|grep "^${username}.*vmware"|grep -v grep|awk '{print $2;}' >> .tmp.txtwhile read linedo        if [[ ${line} != "" ]]; then                kill -9 ${line}        fidone <.tmp.txtrm .tmp.txtsleep 2print "\nAfter kill:\n"ps -ef|grep vmwareexit 0

扩展

如果你想杀和某个用户相关的别的进程(有某个关键字),只需要把脚本里的vmware关键字替换即可,需要的同学可以自己改改。

您需要登录后才可以回帖 登录 | 用户注册

本版积分规则

Archiver|手机版|小黑屋|ACE Developer ( 京ICP备06055248号 )

GMT+8, 2024-5-17 12:19 , Processed in 0.015081 second(s), 6 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表