在CentOS系统中编写Shell脚本的完整指南
环境准备与基础配置
确认系统已安装GNU Bash环境:
bash --version
建议安装开发工具包:
sudo yum groupinstall "Development Tools"
Shell脚本核心要素
- 文件头声明:
#!/bin/bash
- 注释规范:
# 脚本描述
- 权限设置:
chmod +x script.sh
典型脚本案例解析
基础示例:系统信息显示
#!/bin/bash
# 显示服务器基本信息
echo "主机名称: $(hostname)"
echo "系统时间: $(date)"
echo "磁盘使用: $(df -h | grep /dev/sda1)"
实用脚本:自动备份系统日志
#!/bin/bash
BACKUP_DIR="/var/log/backup_$(date +%Y%m%d)"
mkdir -p $BACKUP_DIR
cp /var/log/messages $BACKUP_DIR
echo "日志备份完成于 $(date)" >> /var/log/backup.log
调试与优化技巧
启用调试模式:
bash -x your_script.sh
设置严格错误检测:
set -euo pipefail
进阶功能实现
- 通过crontab配置定时任务:
crontab -e
添加0 3 * * * /path/to/backup.sh
- 使用函数封装重复逻辑:
function system_check() {
free -m | awk '/Mem/{print "内存使用率:", $3/$2*100"%"}
}
注意事项
- 避免使用root权限执行未知脚本
- 配置
$PATH
环境变量确保脚本全局可用 - 定期检查脚本兼容性