CentOS环境下编写与执行Shell脚本(.sh文件)
Shell脚本的价值
在CentOS系统中,Shell脚本是自动化任务的核心工具。通过编写.sh
文件,用户可将重复性操作打包处理,极大提升服务器管理效率。
创建Shell脚本
打开终端执行:
nano hello-world.sh
基础脚本结构
输入以下内容:
#!/bin/bash
# 这是注释行
echo "CentOS系统时间: $(date)"
echo "当前登录用户: $USER"
#!/bin/bash
指定解释器路径,echo
命令用于输出信息。
设置执行权限
chmod +x hello-world.sh
权限变更后可通过路径直接运行:
./hello-world.sh
流程控制示例
#!/bin/bash
if [ -d "/var/log" ]; then
echo "日志目录存在"
else
echo "警告: 日志目录缺失"
fi
for i in {1..5}
do
echo "循环计数: $i"
done
调试脚本
使用追踪模式检查错误:
bash -x script-name.sh
实际应用场景
- 自动备份关键数据
- 日志文件定时清理
- 服务状态监控告警
- 批量用户账户管理
安全注意事项
- 使用
#!/usr/bin/env bash
增强兼容性 - 敏感信息避免硬编码在脚本中
- 定期检查脚本中的命令路径
完整示例脚本
#!/bin/bash
# 系统信息收集脚本
echo "===== 系统报告 ====="
echo "生成时间: $(date '+%Y-%m-%d %H:%M')"
echo "主机名: $(hostname)"
echo "磁盘使用:"
df -h | grep -v tmpfs
echo "内存状态:"
free -m
保存脚本并赋予执行权限后,该脚本将输出关键系统运行状态信息。