介绍
在本次挑战中,你将通过添加日志记录功能来增强提供的 Linux 系统监控脚本。目标是在每个监控周期结束后,将资源使用情况(CPU、内存和磁盘)记录到日志文件中。这项任务将测试你修改和扩展 Shell 脚本以包含文件输出的能力。
基础脚本已经为你准备好了,你需要在此基础上添加日志功能。
为系统监控脚本添加日志功能
任务
- 修改脚本
/home/labex/project/system_monitor.sh,将资源使用情况(CPU、内存和磁盘)追加到同目录下名为resource_usage.log的日志文件中。每条记录都应包含当前的日期和时间。
要求
- 日志文件必须命名为
resource_usage.log,并位于/home/labex/project目录下。 - 每条日志记录必须包含日期、时间以及 CPU、内存和磁盘的资源使用百分比。
- 日志记录功能必须在每个监控周期的资源使用值计算完成后执行。
提示
- 使用
date命令获取当前日期和时间,例如date '+%Y-%m-%d %H:%M:%S'。你可以查阅man date手册页来学习如何格式化输出。 - 记得使用
>>操作符将内容追加到文件中,避免每次都覆盖文件。 - 在追加到日志文件之前,将资源使用值合并为一个字符串。可以使用变量和字符串插值来实现。
- 确保日志文件写入脚本所在的目录,使用绝对路径或相对路径,如
/home/labex/project/resource_usage.log。
示例
完成任务后,运行 /home/labex/project/system_monitor.sh 几秒钟,应该会生成一个 resource_usage.log 文件,其内容类似于:
cat /home/labex/project/resource_usage.log
2024-12-04 14:00:01 CPU: 15% Memory: 45% Disk: 62%
2024-12-04 14:00:03 CPU: 18% Memory: 46% Disk: 62%
2024-12-04 14:00:05 CPU: 20% Memory: 47% Disk: 62%
要正常退出脚本,你可以按 Ctrl+C 发送中断信号。

总结
在本次挑战中,你为 Linux 系统监控脚本添加了日志记录功能。该功能将资源使用情况记录到日志文件中,使用户能够跟踪一段时间内的资源消耗。这项任务巩固了你对 Bash 脚本中文件操作和日期命令的理解。



