Linux 一行命令让CPU占用率达到100%

目录

单行命令

说明:

makeLoveCPU.sh

关闭:

参考


 

  • 单行命令

for i in `seq 1 $(cat /proc/cpuinfo |grep "physical id" |wc -l)`; do dd if=/dev/zero of=/dev/null & done

 

  • 说明:

cat /proc/cpuinfo |grep "physical id" | wc -l 可以获得CPU的个数, 我们将其表示为N.

seq 1 N 用来生成1到N之间的数字

for i in `seq 1 N`; 就是循环执行命令,从1到N

dd if=/dev/zero of=/dev/null 执行dd命令, 输出到/dev/null, 实际上只占用CPU, 没有IO操作.

由于连续执行N个(N是CPU个数)的dd 命令, 且使用率为100%, 这时调度器会调度每个dd命令在不同的CPU上处理.

 

  • makeLoveCPU.sh

# makeLoveCPU.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

 

  • 关闭:

1. fg 后按 ctrl + C (因为该命令是放在后台执行)

2. pkill -9 dd

3.killall dd或killall sh

 

参考

https://blog.csdn.net/robertsong2004/article/details/36879233

https://blog.csdn.net/u010416101/article/details/79198402

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

山水牧羊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值