统计cpu和内存一个月的平均使用率:

#!/bin/bash
totalcpu_rate=0.0
totalmem_rate=0.0
num_days=$(ls -l /var/log/sa/sa[0-3]* | wc -l)
echo $num_days
for file in /var/log/sa/sa[0-3]*
do
cpu_average=$(sar -f $file | grep Average | tail -n1 | awk '{printf("%.2f\n", (100-$NF))}')
mem_average=$(sar -r -f $file | grep Average | tail -1 | awk '{printf("%.2f\n", $4)}')
totalcpu_rate=$(echo "${cpu_average} + ${totalcpu_rate}" | bc)
totalmem_rate=$(echo "${mem_average} + ${totalmem_rate}" | bc)
done cpu_average=$(echo "scale=5; $totalcpu_rate/$num_days" | bc)
mem_average=$(echo "scale=5; $totalmem_rate/$num_days" | bc)
printf "%.2f%%, %.2f%%\n" $cpu_average $mem_average >> /tmp/hostinfo.csv

统计cpu和内存一个月的使用峰值:

#!/bin/bash
cpu_min=100
mem_max=0
for file in /var/log/sa/sa[0-3]*
do
_day_cpu_min=$(sar -f $file | awk 'BEGIN{min=100} {if(($NF ~ /^[1-9]/) && $NF< min) {min=$NF} fi} END{printf("%.2f\n", min)}')
if [ $(echo "${_day_cpu_min} < ${cpu_min}" | bc) ]; then
cpu_min=${_day_cpu_min}
fi
_day_mem_max=$(sar -r -f $file | awk 'BEGIN{max=0} {if((NF==12) && ($5 ~ /^[1-9]/) && $5>max) {max=$5} fi} END{printf("%.2f", max)}')
if [ $(echo "${_day_mem_max} > ${mem_max}" | bc) ]; then
mem_max=${_day_mem_max}
fi
done cpu_max=$(echo "100-${cpu_min}" | bc)
echo ${cpu_max}
echo ${mem_max} printf "%.2f%%, %.2f%%\n" $cpu_max $mem_max >> /tmp/hostinfo.csv

cpu和内存的使用率统计的更多相关文章

  1. 获取CPU和内存的使用率

    1.获取CPU的使用率 主要就是一个计算. int CUseRate::GetCPUUseRate() //获取CPU使用率 { ; FILETIME ftIdle, ftKernel, ftUser ...

  2. PHP 之获取Windows下CPU、内存的使用率

    <?php /** * Created by PhpStorm. * User: 25754 * Date: 2019/5/4 * Time: 13:42 */ class SystemInfo ...

  3. Linux下使用java获取cpu、内存使用率

    原文地址:http://www.voidcn.com/article/p-yehrvmep-uo.html 思路如下:Linux系统中可以用top命令查看进程使用CPU和内存情况,通过Runtime类 ...

  4. linux 查看CPU、内存大小

    查看linux下的cpu.内存和硬盘大小: 查看cpu的方法 1. cat /proc/cpuinfo  或者 更直观的查看cpu的型号命令:dmesg |grep -i xeon 查看内存的方法 2 ...

  5. 通过shell脚本进行linux服务器的CPU和内存压测

    文章目录 内存压测 python的方式 shell的方式 cpu压测 在正常手段下,这个只是压测的方法 在不正常手段下(crontab计划任务),可以提高CPU和内存的使用率 什么?你问我为什么要提高 ...

  6. 一个统计 CPU 内存 硬盘 使用率的shell脚本

    一个统计 CPU 内存 硬盘 使用率的shell脚本,供大家学习参考 #!/bin/bash #This script is use for describle CPU Hard Memery Uti ...

  7. C#获取特定进程CPU和内存使用率

    首先是获取特定进程对象,可以使用Process.GetProcesses()方法来获取系统中运行的所有进程,或者使用Process.GetCurrentProcess()方法来获取当前程序所对应的进程 ...

  8. Windows系统CPU内存网络性能统计第一篇 内存

    最近翻出以前做过的Windows系统性能统计程序,这个程序可以统计系统中的CPU使用情况,内存使用情况以及网络流量.现在将其整理一下(共有三篇),希望对大家有所帮助. 目录如下: 1.<Wind ...

  9. Ubuntu 16.04 标题栏实时显示上下行网速、CPU及内存使用率--indicator-sysmonitor

    ---------------------------------------------------------------------------- 原文地址:http://blog.csdn.N ...

随机推荐

  1. [Flask]celery异步任务队列的使用

    Celery异步任务队列 目录结构树: 配置文件config.py: # 设置中间人地址 broker_url = 'redis://127.0.0.1:6379/1' 主main.py: impor ...

  2. HDU 6444 Neko's loop ( 2018 CCPC 网络赛 && 裴蜀定理 && 线段树 )

    题目链接 题意 : 给出一个 n 个元素的环.可以任意选择起点.选完起点后.可以行走 m 步.每次前进 k 个单位.所走到的点将产生正或负贡献.问你一开始得准备多少才能使得初始资金加上在环上获取最大利 ...

  3. 【Python】爬虫汇总

    主要流程: 获取url下载网页从网页中找寻自己需要的保存(解析+输出)主要概念URL:分大小写统一资源定位符,对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址.互联 ...

  4. echarts 有关饼形图和map的使用技巧1(饼图)

    http://blog.csdn.net/yhn1121/article/details/52041742 先上个链接,百度无意间搜到的,写得比我全面,可以直接飞去看它: 之前写网页用过echarts ...

  5. 2019Java第十三周课程总结

    这周主要是学习了监听器还有制作记事本,主要可以由一下代码来体现 监听器 实验代码 package text12; import java.awt.Container; import java.awt. ...

  6. SQL Server清空数据库中ldf日志文件

    USE [master] ALTER DATABASE [Whir_InternalSystem] SET RECOVERY SIMPLE WITH NO_WAIT ALTER DATABASE [W ...

  7. JAVA-ThreadPoolExecutor 线程池

    一.创建线程池 /** * @param corePoolSize 核心线程池大小 * 当提交一个任务到线程池时,如果当前 poolSize < corePoolSize 时,线程池会创建一个线 ...

  8. [Java]将算术表达式(中序表达式Infix)转成后续表达式Postfix

    Inlet类: package com.hy; import java.io.BufferedReader; import java.io.IOException; import java.io.In ...

  9. DeepFaceLab: 可视化交互式合成功能简介!

    DeepFaceLab在沉寂了几个月后(目测Iperov同志讨生活去了),在8月下旬又迎来了重大更新.我总结了一下,主要是更新了三大功能. 新增Avatar模型 交互式转换器 半脸模型支持FAN ​ ...

  10. [VBA]合并工作簿优化版

    Sub 合并工作簿数据()Dim arrDim i As Integer, j As Integer, x As IntegerDim f As String, m As String, n As S ...