【Linux 从基础到进阶】 常用 Shell 脚本示例解析

常用 Shell 脚本示例解析

Shell 脚本是系统管理员和开发者日常工作中不可或缺的工具。通过它们,我们可以自动化繁琐的任务,如系统备份、资源监控、批量文件处理等。本文将详细解析一些常见的 Shell 脚本示例,并帮助你理解如何将这些脚本应用到实际工作中。

1. 批量文件重命名脚本

示例介绍

有时需要批量修改文件的名称,例如将某个目录中的所有 .txt 文件重命名为 .bak 扩展名,或者按日期或编号进行重命名。

脚本内容

#!/bin/bash
# 批量重命名脚本

for file in *.txt; do
    # 提取文件名不包含扩展名
    filename=$(basename "$file" .txt)
    
    # 将 .txt 文件重命名为 .bak
    mv "$file" "${filename}.bak"
done

echo "所有 .txt 文件已成功重命名为 .bak"

解析

  1. for file in *.txt; do: 通过通配符 *.txt 获取当前目录下所有 .txt 文件。
  2. basename "$file" .txt: 提取文件的基础名称,即去除 .txt 扩展名。
  3. mv "$file" "${filename}.bak": 使用 mv 命令将文件重命名为 .bak

2. 监控系统磁盘使用情况并报警

示例介绍

此脚本用于监控系统的磁盘使用情况,当使用率超过设定的阈值时,发送报警邮件通知管理员。

脚本内容

#!/bin/bash
# 磁盘使用监控脚本

THRESHOLD=90
LOGFILE="/var/log/disk_monitor.log"
EMAIL="admin@example.com"

# 获取每个挂载点的磁盘使用情况
df -h | grep -vE '^Filesystem|tmpfs|cdrom' | awk '{ print $5 " " $1 }' | while read output; do<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱技术的小伙子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值