这个脚本是为了逃过一些资源检测的,当一些机器当前使用率偏低,会被客户要求收回,那咋办呢?使用下面的脚本,就可以留住你的机器了
假设要求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脚本[含注释])的更多相关文章

  1. 监控CPU状况并发送邮件shell脚本

    #!/bin/bash #监控CPU状况并发送邮件 DATE=$(date +%y%m%d) TEMP=$(mktemp tmp.XXX.txt) cat /proc/cpuinfo >$TEM ...

  2. 找出1小时内占用cpu最多的10个进程的shell脚本

    cpu时间是一项重要的资源,有时,我们需要跟踪某个时间内占用cpu周期最多的进程.在普通的桌面系统或膝上系统中,cpu处于高负荷状态也许不会引发什么问题.但对于需要处理大量请求的服务器来讲,cpu是极 ...

  3. Linux 性能监控之CPU&内存&I/O监控Shell脚本1

    Linux 性能监控之CPU&内存&I/O监控Shell脚本1   by:授客 QQ:1033553122   #!/bin/bash # 获取要监控的本地服务器IP地址 IP=`if ...

  4. 06 案例篇:系统的 CPU 使用率很高,但为啥却找不到高 CPU 的应用?

    上一节我讲了 CPU 使用率是什么,并通过一个案例教你使用 top.vmstat.pidstat 等工具,排查高 CPU 使用率的进程,然后再使用 perf top 工具,定位应用内部函数的问题.不过 ...

  5. 4 系统的 CPU 使用率很高,但为啥却找不到高 CPU的应用?

    上一节讲了 CPU 使用率是什么,并通过一个案例教你使用 top.vmstat.pidstat 等工具,排查高 CPU 使用率的进程,然后再使用 perf top 工具,定位应用内部函数的问题.不过就 ...

  6. %iowait和CPU使用率的正确认知

    resources 理解 %IOWAIT (%WIO) LINUX系统的CPU使用率和LOAD Linux Performance Observability Tools How Linux CPU ...

  7. 制造高CPU使用率的简单方法

    在群里有人问制造CPU占用率高的场景用来做测试.所谓做好事难,干“坏”事还不容易?这个需求有很多方法可以实现,比如使用一些压力测试工具.我首先想 到的是HASH JOIN.这个联接比较消耗CPU资源, ...

  8. 使用mysqlslap对mysql进行压测,观察Azure虚拟机cpu使用率

    一直想做这个测试,原因很简单,很多人一直比较怀疑Azure的虚拟机性能,说相同的配置凭啥比阿里的虚拟机贵那么多,其实,我自己以前也怀疑过,但是接触Azure的几个月,确实发现Azure的虚拟机性能真的 ...

  9. 获取Windows操作系统的CPU使用率以及内存使用率

    此功能参考了ProcessHacker项目的代码. 声明定义 typedef struct _UINT64_DELTA { ULONG64 Value; ULONG64 Delta; } UINT64 ...

随机推荐

  1. JAVA之内存结构

    概述 JAVA是我们现在最常用的开发语言,而他的垃圾回收机制(Garbage Collection)的重要作用不言而喻,以下简称GC,所以了解GC至关重要,现本人对于GC机制以前的理解和现在的理解记录 ...

  2. 【Java】反射

    文章目录 反射 概述 动态语言与非动态语言 动态语言 非动态语言 Java反射机制提供的功能 反射相关的主要API 关于java.lang.Class类的理解 类的加载过程 获取Class的实例的方式 ...

  3. 你的Kubernetes Java应用优雅停机了吗?

    Java 应用优雅停机 我们首先考虑下,一般在什么场景下数据会丢失呢? 升级服务时 pod重启时 服务器断电时 因为服务器断电属于极端情况,我们暂且不考虑.那就只有 Java 退出时我们要保证数据的完 ...

  4. Zotero群组新建后无法显示

    我们新建Zotero的群组后无法显示. 此时需要点击文献库,就刷新了. 修改Zotero的群组后无法显示修改后的名称 点击同步即可同步内容.

  5. Using Swap

    # create swap file dd if=/dev/zero of=/.swap bs=1048576 count=4096 # format swap mkswap /.swap # sta ...

  6. 学习OAuth 2.0

    认识OAuth 2.0 OAuth 2.0 是行业标准的授权协议. OAuth 2.0 专注于客户端开发人员的简单性,同时为 Web 应用程序.桌面应用程序.移动设备提供特定的授权流程. 应用场景 有 ...

  7. NOIP2020 排水系统

    几度欲写,却望高精而却步,今习得__int128,君子报仇,一年不晚. NOIP2020 排水系统 DAG图,拓扑就好,核心难点在于毒瘤的分数的操作,毕竟只是T!只有分数相加,就很简单了. a/b + ...

  8. 一种Django多租户解决方案

    什么是多租户? 多租户技术或称多重租赁技术,简称SaaS,是一种软件架构技术,是实现如何在多用户环境下(此处的多用户一般是面向企业用户)共用相同的系统或程序组件,并且可确保各用户间数据的隔离性. 多租 ...

  9. C++多线程之可重入锁

    #include<iostream> #include<thread> #include<mutex> using namespace std; recursive ...

  10. ansible roles实践——安装httpd

    1. vim  httpd.yml 2.执行