首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Shell十个经典实用脚本代码案例合集

Shell十个经典实用脚本代码案例合集

作者头像
风骏时光少年
发布2026-07-01 19:12:16
发布2026-07-01 19:12:16
890
举报

Shell十个经典实用脚本代码案例合集

Shell脚本是Linux运维自动化的基础工具,语法简单、无需编译,能快速完成文件处理、系统监控、批量运维等工作。本文整理10个行业高频经典Shell脚本,全部附带可直接运行的完整代码,适合新手练习与线上环境使用。

1. 批量创建文件夹脚本

项目初始化时常需要批量生成有序目录,循环语句快速完成批量创建。

代码语言:javascript
复制
#!/bin/bash
for i in {1..10}
do
  mkdir -p dir$i
done
echo "批量文件夹创建完毕"

2. 批量重命名文件脚本

统一修改文件后缀,无需手动逐个改名,适合日志、文档批量规整。

代码语言:javascript
复制
#!/bin/bash
for file in *.txt
do
  mv $file ${file%.txt}.bak
done
echo "文件后缀批量修改完成"

3. 内存使用率监控脚本

自动计算内存占用比例,超过阈值输出警告,可配合定时任务巡检服务器资源。

代码语言:javascript
复制
#!/bin/bash
MEM=$(free | awk '/Mem/{printf "%.0f", $3/$2*100}')
echo "当前内存使用率:${MEM}%"
if [ $MEM -gt 80 ];then
  echo "警告:内存资源占用过高"
fi

4. 自动清理过期日志脚本

定时删除多天前老旧日志,释放磁盘存储空间,避免日志堆积。

代码语言:javascript
复制
#!/bin/bash
find /var/log -name "*.log" -mtime +3 -delete
echo "3天前过期日志清理完成"

5. 网段主机存活检测脚本

批量ping扫描局域网主机,快速筛选在线设备,简化网络巡检工作。

代码语言:javascript
复制
#!/bin/bash
for i in {1..20}
do
  ping -c 1 -W 1 192.168.1.$i >/dev/null 2>&1
  [ $? -eq 0 ] && echo "192.168.1.$i 主机在线"
done

6. 统计脚本代码总行数

统计当前目录所有shell文件代码量,用于项目代码规模统计。

代码语言:javascript
复制
#!/bin/bash
total=0
for file in *.sh
do
  line=$(wc -l < $file)
  total=$((total+line))
  echo "$file 行数:$line"
done
echo "全部脚本总行数:$total"

7. 带时间戳数据备份脚本

打包业务目录并添加时间标记,防止备份文件覆盖,保障数据可回溯。

代码语言:javascript
复制
#!/bin/bash
time=$(date +%Y%m%d_%H%M%S)
tar -zcf data_$time.tar.gz /home/data >/dev/null 2>&1
echo "备份完成,文件:data_$time.tar.gz"

8. 进程自动监控重启脚本

持续监测Nginx等核心服务,进程崩溃后自动重启,保障业务不间断运行。

代码语言:javascript
复制
#!/bin/bash
pid=$(pgrep nginx)
if [ -z "$pid" ];then
  systemctl start nginx
  echo "Nginx异常,已自动重启服务"
fi

9. 批量替换文本内容脚本

一键批量修改目录内文件指定字符,适用于批量更新配置文件。

代码语言:javascript
复制
#!/bin/bash
sed -i "s/old_text/new_text/g" *.txt
echo "文本内容批量替换成功"

10. 磁盘空间告警脚本

实时读取根分区磁盘占用,空间不足时输出预警,防止磁盘打满服务宕机。

代码语言:javascript
复制
#!/bin/bash
disk=$(df / | awk 'NR==2{print $5}' | cut -d% -f1)
echo "磁盘使用率:${disk}%"
if [ $disk -gt 90 ];then
  echo "警告:磁盘空间即将耗尽,请及时清理"
fi

文档小结

这10个Shell脚本覆盖运维日常绝大多数自动化场景,代码简短易懂,上手门槛低。脚本可直接复制使用,也能根据业务场景调整参数,搭配crontab定时任务可实现服务器无人值守维护,大幅降低人工运维工作量。

海量精选技术文档和实战案例持续更新,敬请关注【风骏时光少年】

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2026-06-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 风骏时光少年 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Shell十个经典实用脚本代码案例合集
    • 1. 批量创建文件夹脚本
    • 2. 批量重命名文件脚本
    • 3. 内存使用率监控脚本
    • 4. 自动清理过期日志脚本
    • 5. 网段主机存活检测脚本
    • 6. 统计脚本代码总行数
    • 7. 带时间戳数据备份脚本
    • 8. 进程自动监控重启脚本
    • 9. 批量替换文本内容脚本
    • 10. 磁盘空间告警脚本
    • 文档小结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档