Linux 运维必备:这四个 Shell 脚本让你的效率提升 300%

系统
今天分享四个实战 Shell 脚本,覆盖80%日常运维场景,从此告别低效手工操作。

你是否也经历过这些崩溃瞬间?

  • 凌晨3点被报警叫醒,手动查日志半小时才发现是磁盘满了
  • 重复执行ps -ef | grep java查看进程状态,一天敲了20遍
  • 新同事误删了关键日志,却找不到操作记录。

今天分享四个实战Shell脚本,覆盖80%日常运维场景,从此告别低效手工操作。

效率翻倍脚本清单

1. 服务器「开机自检」脚本

功能亮点:

  • 开机自动生成健康报告
  • 异常指标标红告警
  • 可以根据自身业务情况选择微信/邮件进行通知。

该收集系统健康状态 :

  • 获取 CPU 负载 (top)
  • 计算 内存占用率 (free)
  • 检查 磁盘使用情况 (df)
  • 监测 关键服务状态(systemctl is-active)

异常指标标红:

  • 设定** CPU >80%、内存 >80%、磁盘 >90% **作为告警阈值
  • 超出范围时,标红显示

运行示例:

请将上述脚本内容保存到一个名为 health_check.sh 的文件里。之后,您可以通过运行 bash health_check.sh 来执行这个脚本。如果一切顺利,您将会看到类似下面展示的结果。

2. 日志「智能清理」工具

痛点解决:

  • 传统rm -rf容易误删重要日志
  • 手动清理无法精准控制时间/大小

智能清理逻辑:

  • find "$LOG_DIR" -type f -name "*.log" -mtime +$RETENTION_DAYS:这个命令会在 LOG_DIR 目录中查找所有 .log 文件,并且这些文件的修改时间超过了 RETENTION_DAYS 天。-mtime +$RETENTION_DAYS 表示查找修改时间超过 7 天的文件。
  • -exec bash -c '...' bash {} +:对于找到的每个文件,-exec 会执行一个 Bash 脚本。bash -c '...' 中的脚本会对每个文件执行归档操作。

3. 进程自动监控与重启脚本

为了确保我们的服务能够平稳运行,当遇到进程意外退出的情况时,我们希望能自动监控并重启这些进程,以减少对业务的影响。这个脚本正是为此而设计的,它可以帮助我们实现这一目标。

4. 故障「秒级定位」神器

功能演示:

图片

使用 ./log_scan.sh 脚本,快速抓取系统与应用层错误,秒级定位问题,助力高效故障排查!

核心代码:

图片

新手避坑指南

Shell脚本四大死亡陷阱:

  • 未处理的空格路径(永远用引号包裹变量)
  • 直接使用rm -rf $VAR(必须先检查变量非空)
  • 忽略错误退出码(关键操作前加set -e)
  • 跨平台换行符问题(用dos2unix预处理脚本)
责任编辑:赵宁宁 来源: 攻城狮成长日记
相关推荐

2024-10-10 11:49:27

2023-05-31 07:24:48

2024-01-09 16:08:21

数据中心运维管理

2016-12-09 13:08:25

2018-06-29 15:07:13

代码工程师软件开发

2015-04-15 11:31:14

智能硬件智能家居

2024-11-08 17:04:03

Linux运维

2016-10-09 20:07:43

2022-08-24 14:42:51

Linux技巧

2015-08-13 10:49:33

WLAN无线局域网

2017-05-16 11:09:56

2017-04-12 14:33:01

机器学习数据分析开发

2023-09-12 23:15:08

Shell脚本

2015-08-17 16:34:13

2025-01-24 07:44:31

LinuxsystemdAnsible

2021-04-25 11:56:45

开源开源项目开源现状

2015-07-23 10:25:27

android代码质量

2019-10-15 14:14:26

Linuxshell运维

2011-06-14 18:13:05

网站分析

2014-12-16 08:45:30

华为IT运维
点赞
收藏

51CTO技术栈公众号