一行命令搞定

for i in `seq 1 $(cat /proc/cpuinfo |grep "physical id" |wc -l)`; do dd if=/dev/zero of=/dev/null & done
# 恢复正常
killall dd 
pidof dd | xargs kill -9

使用脚本

  • makecpuhigh.sh
#! /bin/sh
# filename killcpu.sh
for i in `seq $1`
do
 echo -ne "
i=0;
while true
do
i=i+1;
done" | /bin/sh &
 pid_array[$i]=$! ;
done
for i in "${pid_array[@]}"; do
 echo 'kill ' $i ';';
done
  • 执行命令,或者将如下命令写进脚本
while true; do sh makecpuhigh.sh $1 ; sleep 2; done
这里$1的值需要手动传入
# 恢复正常
pidof sh | xargs kill -9 # 这条命令执行前提是确认没有运行sh的相关脚本

Q.E.D.