在做一个测试时,需要模拟服务器CPU占用满的情况,在查阅相关资料后,发现网上程序不太好用,
原文在这:http://www.2cto.com/os/201304/202068.html
优化后如下:
#! /bin/sh
# filename killcpu.sh
if [ $# -ne ] ; then
echo "USAGE: $0 <CPUs>|stop"
exit ;
fi stop()
{
while read LINE
do
kill - $LINE
echo "kill $LINE sucessfull"
done < pid.txt
cat /dev/null > pid.txt
} start()
{
echo "u want to cpus is: "$
for i in `seq $`
do
echo -ne "
i=;
while true
do
i=i+;
done" | /bin/sh &
pid_array[$i]=$! ;
done for i in "${pid_array[@]}"; do
echo 'pid is: ' $i ';';
echo $i >> pid.txt
done
} case $ in
stop)
stop
;;
*)
start $
;;
esac
运行方式:
启动:./killcpu.sh 1
停止:killcpu.sh stop