我来教你如何将cpu使用率up起来(shell脚本[含注释])
这个脚本是为了逃过一些资源检测的,当一些机器当前使用率偏低,会被客户要求收回,那咋办呢?使用下面的脚本,就可以留住你的机器了
假设要求cpu使用率不能低于35%
使用方法:bash up_up_up.sh 35
注意自己实际环境的情况,别把cpu当烧烤架,那味道,可香了
#!/bin/bash
# 获取本脚本当前所在路径
PWD=$(cd $(dirname $0); pwd)
# 获取当前cpu使用率
cpu_using=$(top -n 3 | awk '/%Cpu/ {print $2}' | tail -1)
# 通过$1位置变量,将需要达到的cpu使用率参数传给cpu_used
cpu_used=$1
# 判断需要达到的cpu使用率是否小于当前cpu使用率
# 如果需要达到的cpu使用率小于当前cpu使用率,则退出脚本,返回状态码为0
# 如果需要达到的cpu使用率大于当前cpu使用率,则定义cpu_status的值为cpu使用率和需要达到的cpu使用率的差值
if [[ "${cpu_used}" -le "${cpu_using}" ]];then
exit 0
else
cpu_status=$(echo "$(( ${cpu_using}-${cpu_used} ))")
fi
# 判断脚本执行的时候是否有传参
if [ $# != 1 ]
then
printf "\e[0;34mUSAGE: $0 30\e[0m\n"
exit 1
fi
# cpu_proc=$(grep 'processor' /proc/cpuinfo | uniq | wc -l)
# cpu_using_count=$(awk "BEGIN {print ${cpu_proc} * ${cpu_using} / 100}")
# cpu_userd_count=$(awk "BEGIN {print ${cpu_proc} * ${cpu_used} / 100}")
# cpu_num_count=$(awk "BEGIN {print ${cpu_using_count} - ${cpu_userd_count}}")
# cpu_num=${cpu_num_count##*-}
# 判断cpu_status的值是否是单数
# 如果cpu_status的值是单数,则cpu_num的值为1
# 如果cpu_status的值是双数,则cpu_num的值为cpu_status的值的正整数的第一位
if [[ "${cpu_status}" =~ ^-?[[:digit:]]{1}$ ]];then
cpu_num=1
else
num=${cpu_status##*-}
cpu_num=${num:0:1}
fi
# 开启cpu_num的个数的死循环进程,并且记录下来这个进程的pid号
for i in $(seq ${cpu_num})
do
echo -ne "
i=0;
while true
do
i=i+1;
done" | /bin/sh &
echo "kill $!" >> ${PWD}/kill_cpu_up.log 2>&1
pid_array[${i}]=$!
done
我来教你如何将cpu使用率up起来(shell脚本[含注释])的更多相关文章
- 监控CPU状况并发送邮件shell脚本
#!/bin/bash #监控CPU状况并发送邮件 DATE=$(date +%y%m%d) TEMP=$(mktemp tmp.XXX.txt) cat /proc/cpuinfo >$TEM ...
- 找出1小时内占用cpu最多的10个进程的shell脚本
cpu时间是一项重要的资源,有时,我们需要跟踪某个时间内占用cpu周期最多的进程.在普通的桌面系统或膝上系统中,cpu处于高负荷状态也许不会引发什么问题.但对于需要处理大量请求的服务器来讲,cpu是极 ...
- Linux 性能监控之CPU&内存&I/O监控Shell脚本1
Linux 性能监控之CPU&内存&I/O监控Shell脚本1 by:授客 QQ:1033553122 #!/bin/bash # 获取要监控的本地服务器IP地址 IP=`if ...
- 06 案例篇:系统的 CPU 使用率很高,但为啥却找不到高 CPU 的应用?
上一节我讲了 CPU 使用率是什么,并通过一个案例教你使用 top.vmstat.pidstat 等工具,排查高 CPU 使用率的进程,然后再使用 perf top 工具,定位应用内部函数的问题.不过 ...
- 4 系统的 CPU 使用率很高,但为啥却找不到高 CPU的应用?
上一节讲了 CPU 使用率是什么,并通过一个案例教你使用 top.vmstat.pidstat 等工具,排查高 CPU 使用率的进程,然后再使用 perf top 工具,定位应用内部函数的问题.不过就 ...
- %iowait和CPU使用率的正确认知
resources 理解 %IOWAIT (%WIO) LINUX系统的CPU使用率和LOAD Linux Performance Observability Tools How Linux CPU ...
- 制造高CPU使用率的简单方法
在群里有人问制造CPU占用率高的场景用来做测试.所谓做好事难,干“坏”事还不容易?这个需求有很多方法可以实现,比如使用一些压力测试工具.我首先想 到的是HASH JOIN.这个联接比较消耗CPU资源, ...
- 使用mysqlslap对mysql进行压测,观察Azure虚拟机cpu使用率
一直想做这个测试,原因很简单,很多人一直比较怀疑Azure的虚拟机性能,说相同的配置凭啥比阿里的虚拟机贵那么多,其实,我自己以前也怀疑过,但是接触Azure的几个月,确实发现Azure的虚拟机性能真的 ...
- 获取Windows操作系统的CPU使用率以及内存使用率
此功能参考了ProcessHacker项目的代码. 声明定义 typedef struct _UINT64_DELTA { ULONG64 Value; ULONG64 Delta; } UINT64 ...
随机推荐
- 自动化集成:Pipeline整合Docker+K8S
前言:该系列文章,围绕持续集成:Jenkins+Docker+K8S相关组件,实现自动化管理源码编译.打包.镜像构建.部署等操作:本篇文章主要描述流水线集成K8S用法. 一.背景描述 分布式服务的部署 ...
- Java 中如何实现线程间通信
世界以痛吻我,要我报之以歌 -- 泰戈尔<飞鸟集> 虽然通常每个子线程只需要完成自己的任务,但是有时我们希望多个线程一起工作来完成一个任务,这就涉及到线程间通信. 关于线程间通信本文涉及到 ...
- Rust学习(一)
为什么学习Rust 最近在看Linux相关新闻的时候,看到了Linux内核正在将Rust集成至内核内的消息,且越来越多的嵌入式开发可以使用Rust编程.以往笔者的技术栈只有 C语言 ,C++也只是浅尝 ...
- 理解ASP.NET Core - 基于Cookie的身份认证(Authentication)
注:本文隶属于<理解ASP.NET Core>系列文章,请查看置顶博客或点击此处查看全文目录 概述 通常,身份认证(Authentication)和授权(Authorization)都会放 ...
- MySql服务器逻辑架构
一.MySql服务器逻辑架构图 每个虚线框都是一层: 第一层:最上层的服务器不是MySql所独有的,大多数基于网络的客户端/服务器工具或者服务都有类似的系统.比如链接处理,授权认证,安 ...
- Qt之图片
widget.h: #ifndef WIDGET_H #define WIDGET_H #include<QPaintEvent> #include <QWidget> #in ...
- Tomcat服务器和Servlet版本的对应关系
Tomcat服务器和Servlet版本的对应关系 Servlet 程序从2.5版本是现在世面使用最多的版本(xml配置) 到了Servlet3.0后.就是注解版本的Servlet使用
- Kubernetes 微服务最佳实践
本文由个人笔记 ryan4yin/knowledge 整理而来 本文主要介绍我个人在使用 Kubernetes 的过程中,总结出的一套「Kubernetes 配置」,是我个人的「最佳实践」. 其中大部 ...
- javaweb登陆界面实现不同角色进入不同界面
目录结构 类包: AccountBean.java AccountDao.java JudgeServlet.java 登陆界面: index.jsp 代码实现 AccountBean.java pa ...
- ORB_SLAM3 + ROS采坑实录(从零开始的毕设生活第一弹)
ORB-SLAM3配置 https://github.com/UZ-SLAMLab/ORB_SLAM3 https://github.com/shanpenghui/ORB_SLAM3_Fixed E ...