服务器资源监控Bash脚本怎么写

发布时间:2025-02-15 19:42:37 作者:小樊
来源:亿速云 阅读:85

编写一个服务器资源监控的Bash脚本可以帮助你实时了解服务器的CPU、内存、磁盘和网络使用情况。以下是一个简单的示例脚本,它使用了一些常用的命令来收集和显示这些信息。

#!/bin/bash

# 获取当前日期和时间
echo "Server Resource Monitoring - $(date)"

# CPU使用率
echo -e "\nCPU Usage:"
top -bn1 | grep load | awk '{printf("Average Load: %.2f, CPU Usage: %.2f%%\n", $(NF-2), $(NF-1))}'

# 内存使用情况
echo -e "\nMemory Usage:"
free -m | awk 'NR==2{printf("Total Memory: %sMB, Used Memory: %sMB, Free Memory: %sMB\n", $2, $3, $4)}'

# 磁盘使用情况
echo -e "\nDisk Usage:"
df -h | awk '$NF=="/"{printf("Disk: %s, Used: %s, Available: %s, Use%: %s\n", $1, $3, $4, $5)}'

# 网络接口流量
echo -e "\nNetwork Traffic:"
ifconfig eth0 | grep 'RX packets' | awk '{printf("Received Packets: %s, Received Bytes: %s\n", $4, $6)}'
ifconfig eth0 | grep 'TX packets' | awk '{printf("Transmitted Packets: %s, Transmitted Bytes: %s\n", $4, $6)}'

# 结束
echo -e "\nMonitoring complete at $(date)"

说明:

  1. CPU使用率:使用top命令获取CPU的平均负载和当前使用率。
  2. 内存使用情况:使用free命令获取总内存、已用内存和空闲内存。
  3. 磁盘使用情况:使用df命令获取磁盘的总容量、已用空间、可用空间和使用百分比。
  4. 网络接口流量:使用ifconfig命令获取指定网络接口(例如eth0)的接收和发送数据包数量及字节数。

使用方法:

  1. 将上述脚本保存为一个文件,例如monitor.sh
  2. 赋予脚本执行权限:
    chmod +x monitor.sh
    
  3. 运行脚本:
    ./monitor.sh
    

注意事项:

这个脚本提供了一个基本的服务器资源监控功能,你可以根据实际需求进行进一步的定制和优化。

推荐阅读:
  1. 如何高效进行服务器运维
  2. Sysadmin必学的系统管理技巧有哪些

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

服务器运维

上一篇:Bash脚本如何实现定时任务调度

下一篇:Bash脚本怎样实现自动化测试

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》