UNIX 中如何批量杀掉进程?

王朝system·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

if test $# -eq 0

then

echo "Usage: killproc procname"

exit 0

fi

for i

do ps -ea | awk -v name=$i '

BEGIN {

n = 0;

}

$4 == name && !system("kill -9 " $1) {

print $1, "killed"

n ++

}

END {

if (n == 0)

print "No process killed !"

else

print "Kill", n, name, "process !"

}'

done

我也有一个

它是 杀同一有户的

它的作者是::MARTIN .P

#include <stdio.h>

main(argc, argv)

int argc;

char *argv[];

{

char *prog,

*user,

command[1024],

*strrchr(); if ((prog = strrchr(argv[0], '/')) == 0)

prog = argv[0];

else

prog++; if (argc != 2) {

fprintf(stderr, "Usage: %s <user>\n", prog);

exit(1);

}

user = argv[1] setuid(0);

setgid(0); /* There is a better way but this is easy to program. */

sprintf(command, "\

ALL_PROC=''\n\

for PROC in `ps -u%s | cut -c-6`\n\

do\n\

if [ $PROC != PID ]\n\

then\n\

ALL_PROC=$ALL_PROC\\ $PROC\n\

fi\n\

done\n\

if [ -n $ALL_PROC ]\n\

then\n\

kill -9 $ALL_PROC\n\

fi\n", user); system(command);

} /* main() */

給你一个最简单的

#/usr/bin

ps -e|egrep $1 |awk "print \"kill -9\" \$1}" | /bin/sh

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航