统计本机内存情况和使用状况的脚本

简介: #fetch and process memory information   [ -f /proc/meminfo ] && {  #First judge whether the file exists   #-e是模式的意思,常用来保护以破折号开头的模式。
  1. #fetch and process memory information  
  2. [ -f /proc/meminfo ] && {  #First judge whether the file exists  
  3. #-e是模式的意思,常用来保护以破折号开头的模式。  
  4. #-w是全字匹配。  
  5. #-i忽略大小写。  
  6. #-d指定分割符,-f为按照分割符取出的域,2-指的是域2及以后  
  7. Buffers=`grep -we 'Buffers' /proc/meminfo | cut -d' ' -f2- | tr -d "[A-Z][a-z] "`  
  8. Cached=`grep -we 'Cached' /proc/meminfo | cut -d' ' -f2- | tr -d "[A-Z][a-z] "`  
  9. MemFree=`grep -ie 'MemFree' /proc/meminfo | cut -d' ' -f2- | tr -d "[A-Z][a-z] "`  
  10. MemTotal=`grep -ie 'MemTotal' /proc/meminfo | cut -d' ' -f2- | tr -d "[A-Z][a-z] "`  
  11. SwapCached=`grep -ie 'SwapCached' /proc/meminfo | cut -d' ' -f2- | tr -d "[A-Z][a-z] "`  
  12. SwapFree=`grep -ie 'SwapFree' /proc/meminfo | cut -d' ' -f2- | tr -d "[A-Z][a-z] "`  
  13. SwapTotal=`grep -ie 'SwapTotal' /proc/meminfo | cut -d' ' -f2- | tr -d "[A-Z][a-z] "`  
  14. }  
  15.   
  16. MEMUSED="$(( ( ( ( $MemTotal - $MemFree ) - $Cached ) - $Buffers ) / 1024 ))"  
  17. MEMTOTAL="$(( $MemTotal / 1024))"  
  18. MEMFREE="$(( $MEMTOTAL - $MEMUSED ))"  
  19. MEMPER="$(( ( $MEMUSED * 100 ) / $MEMTOTAL ))"  
  20. "$SwapTotal" -gt "1" ] && {  
  21.   SWAPUSED="$(( ( ( $SwapTotal - $SwapFree ) - $SwapCached ) / 1024 ))"  
  22.   SWAPTOTAL="$(( $SwapTotal / 1024))"  
  23.   SWAPFREE="$(( $SWAPTOTAL - $SWAPUSED ))"  
  24.   SWAPPER="$(( ( $SWAPUSED * 100 ) / $SWAPTOTAL ))"   
  25. } || {  
  26.   SWAPUSED="0"  
  27.   SWAPTOTAL="0"  
  28.   SWAPPER="0"   
  29. }  
  30.   
  31. # display the information  
  32. /bin/echo  
  33. /bin/echo "Memory"  
  34. /bin/echo "Used: $MEMUSED MB"  
  35. /bin/echo "Free: $MEMFREE MB"  
  36. /bin/echo "Total: $MEMTOTAL MB"  
  37. /bin/echo  
  38. /bin/echo "Swap"  
  39. /bin/echo "Used: $SWAPUSED MB"  
  40. /bin/echo "Free: $SWAPFREE MB"  
  41. /bin/echo "Total: $SWAPTOTAL MB"  
  42. /bin/echo  
目录
相关文章
|
3月前
|
安全 Linux Shell
Linux上执行内存中的脚本和程序
【9月更文挑战第3天】在 Linux 系统中,可以通过多种方式执行内存中的脚本和程序:一是使用 `eval` 命令直接执行内存中的脚本内容;二是利用管道将脚本内容传递给 `bash` 解释器执行;三是将编译好的程序复制到 `/dev/shm` 并执行。这些方法虽便捷,但也需谨慎操作以避免安全风险。
202 6
|
3月前
|
监控 Ubuntu API
Python脚本监控Ubuntu系统进程内存的实现方式
通过这种方法,我们可以很容易地监控Ubuntu系统中进程的内存使用情况,对于性能分析和资源管理具有很大的帮助。这只是 `psutil`库功能的冰山一角,`psutil`还能够提供更多关于系统和进程的详细信息,强烈推荐进一步探索这个强大的库。
51 1
|
5月前
|
NoSQL Redis C++
c++开发redis module问题之在复杂的Redis模块中,特别是使用第三方库或C++开发时,接管内存统计有哪些困难
c++开发redis module问题之在复杂的Redis模块中,特别是使用第三方库或C++开发时,接管内存统计有哪些困难
|
5月前
|
监控 Python
paramiko 模块 ---Python脚本监控当前系统的CPU、内存、根目录、IP地址等信息
paramiko 模块 ---Python脚本监控当前系统的CPU、内存、根目录、IP地址等信息
|
5月前
|
Java Perl
JVM内存问题之如何统计在JVM的类加载中,每一个类的实例数量,并按照数量降序排列
JVM内存问题之如何统计在JVM的类加载中,每一个类的实例数量,并按照数量降序排列
|
5月前
|
监控 Linux
Linux脚本之监控系统内存使用情况并给予警告
Linux脚本之监控系统内存使用情况并给予警告
|
7月前
|
存储 弹性计算 运维
调整虚拟机内存参数的 shell 脚本
【4月更文挑战第29天】
79 2
|
7月前
|
数据处理 开发者 Python
python 代码内存统计
【4月更文挑战第9天】
|
7月前
|
存储 监控 异构计算
【Python】GPU内存监控脚本
【Python】GPU内存监控脚本
|
7月前
|
存储 弹性计算 运维
调整虚拟机内存参数的shell 脚本
【4月更文挑战第29天】
68 0

热门文章

最新文章