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

原创 2012年03月31日 14:58:32
       在集成开发环境中,由于硬件的成本高,所以往往需要几个开发人员共享一台硬件设备。

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


源码如下

#!/bin/ksh

if [[ $1 == "" ]]
then
	print "ko username, please input username!"
	exit 1
fi

username=$1
print "\nBefore kill:\n"
ps -ef|grep vmware
print "\nkilling ..."
echo > .tmp.txt
ps -ef|grep "^${username}.*vmware"|grep -v grep|awk '{print $2;}' >> .tmp.txt

while read line
do
	if [[ ${line} != "" ]]; then
		kill -9 ${line}
	fi
done <.tmp.txt
rm .tmp.txt
sleep 2
print "\nAfter kill:\n"
ps -ef|grep vmware
exit 0

运行结果




扩展

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


JAVA虚拟机关闭钩子(Shutdown Hook)

Java程序经常也会遇到进程挂掉的情况,一些状态没有正确的保存下来,这时候就需要在JVM关掉的时候执行一些清理现场的代码。JAVA中的ShutdownHook提供了比较好的方案。 JDK提供了Java...
  • u013256816
  • u013256816
  • 2015年12月24日 15:48
  • 12640

ESXI虚拟机任务正在执行中

1.原因 由于某个win2003虚拟机需要重启,然后用vSphere连接vCenter,给这个虚拟机点击重置按钮 然后vSphere下现实任务正在执行。。。。。过了N min之后,执行依旧!!! ...
  • caiwenguang1992
  • caiwenguang1992
  • 2015年04月02日 11:29
  • 1840

Linux开发环境搭建与使用——通过虚拟机安装系统( ubuntu )

我们这里使用vmplayer player虚拟机,安装包下载请点此处。 双击VMware-player-4.0.6-1035888.exe,一路next即可。 通过Vmware Player创...
  • tennysonsky
  • tennysonsky
  • 2015年02月12日 12:15
  • 4114

Linux系统小技巧(4):环境变量JAVA_TOOL_OPTIONS简介

原文链接 摘要: 对于通过JNI使用Java的应用,比如使用JNI来调用JVM。给JVM传递参数,环境变量JAVA_TOOL_OPTIONS很可能是你唯一的可选项。 有关此环境变量...
  • aikudemn
  • aikudemn
  • 2017年07月20日 15:13
  • 696

使用VMWare虚拟机创建CentOS版本的Linux学习环境

学习Android开发,如果不学习Linux的基本使用,总感觉心里过意不去,因为毕竟Android还是搭载在Linux的基础之上的。因此,学习一种Linux系统的基本操作,对我们以后的学习还是很有作用...
  • niu_zhixin
  • niu_zhixin
  • 2014年07月24日 23:16
  • 586

使用VMWare虚拟机创建CentOS版本的Linux学习环境(每一步都有截图与说明)

学习Android开发,如果不学习Linux的基本使用,总感觉心里过意不去,因为毕竟Android还是搭载在Linux的基础之上的。因此,学习一种Linux系统的基本操作,对我们以后的学习还是很有作用...
  • bz419927089
  • bz419927089
  • 2014年07月23日 10:51
  • 3079

在VMWare Workstation上使用RedHat Linux安装和配置Hadoop群集环境01_虚拟机的安装

在VMWare Workstation上使用RedHat Linux安装和配置Hadoop群集环境01_虚拟机的安装   整个Hadoop环境搭建过程用到了三个虚拟机:Red Hat Linux...
  • sony315
  • sony315
  • 2011年10月12日 10:34
  • 775

在VMWare Workstation上使用RedHat Linux安装和配置Hadoop群集环境06_WordCount示例

①  运行框架自带的wordcount示例   ②  在192.168.11.188虚拟机中建立两个输入文件input1和input2 ③ HDFS中建立一个目录input ④  拷贝...
  • skyering
  • skyering
  • 2012年02月19日 19:08
  • 1791

实用的 Python —— 使用虚拟环境 virtualenv(Linux)

虚拟环境是 Python 解释器的一个私有副本,在该环境中你可以安装私有包,而不会影响系统的全局 Python 解释器。1. 虚拟环境的实用性 (1)在系统的 Python 解释器中避免包的混乱和版本...
  • lanchunhui
  • lanchunhui
  • 2016年06月01日 19:08
  • 1509

VMWare7.0环境linux5.4安装oracle10G单实例

  • 2010年04月26日 13:17
  • 2.23MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Linux环境下VMware使用之实用杀进程tool
举报原因:
原因补充:

(最多只允许输入30个字)