我来教你如何将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 ...
随机推荐
- JAVA之内存结构
概述 JAVA是我们现在最常用的开发语言,而他的垃圾回收机制(Garbage Collection)的重要作用不言而喻,以下简称GC,所以了解GC至关重要,现本人对于GC机制以前的理解和现在的理解记录 ...
- 【Java】反射
文章目录 反射 概述 动态语言与非动态语言 动态语言 非动态语言 Java反射机制提供的功能 反射相关的主要API 关于java.lang.Class类的理解 类的加载过程 获取Class的实例的方式 ...
- 你的Kubernetes Java应用优雅停机了吗?
Java 应用优雅停机 我们首先考虑下,一般在什么场景下数据会丢失呢? 升级服务时 pod重启时 服务器断电时 因为服务器断电属于极端情况,我们暂且不考虑.那就只有 Java 退出时我们要保证数据的完 ...
- Zotero群组新建后无法显示
我们新建Zotero的群组后无法显示. 此时需要点击文献库,就刷新了. 修改Zotero的群组后无法显示修改后的名称 点击同步即可同步内容.
- Using Swap
# create swap file dd if=/dev/zero of=/.swap bs=1048576 count=4096 # format swap mkswap /.swap # sta ...
- 学习OAuth 2.0
认识OAuth 2.0 OAuth 2.0 是行业标准的授权协议. OAuth 2.0 专注于客户端开发人员的简单性,同时为 Web 应用程序.桌面应用程序.移动设备提供特定的授权流程. 应用场景 有 ...
- NOIP2020 排水系统
几度欲写,却望高精而却步,今习得__int128,君子报仇,一年不晚. NOIP2020 排水系统 DAG图,拓扑就好,核心难点在于毒瘤的分数的操作,毕竟只是T!只有分数相加,就很简单了. a/b + ...
- 一种Django多租户解决方案
什么是多租户? 多租户技术或称多重租赁技术,简称SaaS,是一种软件架构技术,是实现如何在多用户环境下(此处的多用户一般是面向企业用户)共用相同的系统或程序组件,并且可确保各用户间数据的隔离性. 多租 ...
- C++多线程之可重入锁
#include<iostream> #include<thread> #include<mutex> using namespace std; recursive ...
- ansible roles实践——安装httpd
1. vim httpd.yml 2.执行