技术文摘
5 个超详细 Shell 脚本实例分享,值得珍藏
2024-12-31 11:48:44 小编
5 个超详细 Shell 脚本实例分享,值得珍藏
在 Linux 系统中,Shell 脚本是一种强大的工具,能够帮助我们自动化各种任务,提高工作效率。下面为大家分享 5 个超详细的 Shell 脚本实例。
实例一:文件备份脚本
#!/bin/bash
backup_dir="/backup"
source_file="/home/user/data.txt"
if [! -d "$backup_dir" ]; then
mkdir -p "$backup_dir"
fi
cp "$source_file" "$backup_dir/data_backup_$(date +%Y%m%d).txt"
这个脚本可以将指定的文件定期备份到指定的目录中,并按照日期进行命名。
实例二:目录清理脚本
#!/bin/bash
target_dir="/tmp/logs"
max_age_days=7
find "$target_dir" -type f -mtime +"$max_age_days" -exec rm {} \;
它能够自动删除指定目录中超过指定天数的旧文件,释放磁盘空间。
实例三:系统信息监控脚本
#!/bin/bash
echo "系统 CPU 使用率: $(top -bn1 | grep 'Cpu(s)' | awk '{print $2 + $4}')%"
echo "系统内存使用情况: $(free -m | awk 'NR==2{printf "总内存: %sMB 已用: %sMB 可用: %sMB\n", $2, $3, $4}')"
此脚本可以实时监控系统的 CPU 使用率和内存使用情况。
实例四:批量重命名文件脚本
#!/bin/bash
target_dir="/home/user/pictures"
for file in "$target_dir"/*; do
if [ -f "$file" ]; then
new_name=$(echo "$file" | awk -F'.' '{print $1 "_new." $2}')
mv "$file" "$new_name"
fi
done
能够方便地对指定目录下的文件进行批量重命名。
实例五:服务状态监控脚本
#!/bin/bash
service_name="httpd"
if systemctl is-active "$service_name" >/dev/null; then
echo "$service_name 服务正在运行"
else
echo "$service_name 服务已停止,尝试启动..."
systemctl start "$service_name"
fi
可以监控指定服务的状态,并在服务停止时尝试自动启动。
以上就是为您分享的 5 个 Shell 脚本实例,希望对您在 Shell 脚本的学习和应用中有所帮助,让您的工作更加高效和便捷。
TAGS: Shell 脚本实例 超详细分享 值得珍藏的脚本 Shell 编程学习
- JSP 版 ueditor1.2.5 部分问题(上传图片失败)的解决之道
- CKEditor 取消转义的两个办法
- 去除 syntaxhighlighter 右上角问号图标的三种途径
- Fckeditor XML 请求错误:内部服务器错误(500)解决办法汇总
- Ajax 和 PHP 为 FCKEditor 文本编辑器添加图片删除功能的实现
- FCKeditor Smarty 编辑器在 PHP 中的应用
- SyntaxHighlighter 与 CKEditor 插件助力轻松实现代码语法着色
- 为 CKEditor 编辑器添加上传图片功能
- ThinkPHP 中 FCKeditor 编辑器使用指南
- Fckeditor 防范非法文件上传 增设登录判定
- 百度编辑器二次开发常用手记汇总
- kindSoft 在线网页编辑器配置参数简介
- 百度编辑器基于 Json 对象取值实现初次渲染并绘制表格
- SSTI 模板注入安全漏洞深度剖析
- 解决 fckeditor 在 ie9 中无法弹出对话框及弹出层兼容问题的方法