shell 脚本常用于自动化执行文件备份与压缩的任务

简介: shell 脚本常用于自动化执行文件备份与压缩的任务

在Linux环境下, shell 脚本常用于自动化执行文件备份与压缩的任务。以下是一个简单的示例,展示如何使用 shell 脚本备份 /etc 目录下的所有内容并压缩至 /root/bak 目录:

#!/bin/bash

# 定义源目录、目标目录和备份文件名(包括日期时间戳)
SOURCE_DIR="/etc"
DEST_DIR="/root/bak"
BACKUP_FILE="etc_backup_$(date +%Y%m%d%H%M%S).tar.gz"

# 执行备份与压缩操作
cd "$SOURCE_DIR" || exit
tar -czf "${DEST_DIR}/${BACKUP_FILE}" .

# 可选:清理过期备份(例如,保留最近7天的备份)
find "${DEST_DIR}/" -name "etc_backup_*.tar.gz" -mtime +7 -exec rm {
   } \;

echo "Backup of /etc completed and compressed to ${DEST_DIR}/${BACKUP_FILE}"

# 如果需要,你可以添加定时任务设置,让此脚本定期运行
# 如在crontab中添加一行类似:
# 0 0 * * * /path/to/your/script.sh

在这个脚本中:

  • tar -czf 命令用于创建一个新的归档文件并对其进行gzip压缩。-c 表示创建新归档文件,-z 表示使用gzip压缩,-f 指定归档文件名。

  • $(date +%Y%m%d%H%M%S) 用于获取当前的日期和时间,并将其包含在备份文件名中,以便追踪备份的时间点。

  • find 命令可用于按时间筛选旧的备份文件并删除,这里假设我们只保留最近7天内的备份。

最后,提醒一句,实际在生产环境中运行此类脚本之前,务必进行充分的测试和验证,确保脚本的安全性和正确性。

目录
相关文章
|
4月前
|
关系型数据库 MySQL Shell
MySQL 备份 Shell 脚本:支持远程同步与阿里云 OSS 备份
一款自动化 MySQL 备份 Shell 脚本,支持本地存储、远程服务器同步(SSH+rsync)、阿里云 OSS 备份,并自动清理过期备份。适用于数据库管理员和开发者,帮助确保数据安全。
|
27天前
|
机器学习/深度学习 Kubernetes 监控
Kubernetes 节点故障自愈方案:结合 Node Problem Detector 与自动化脚本
本文深入探讨了Kubernetes节点故障自愈方案,结合Node Problem Detector(NPD)与自动化脚本,提供技术细节、完整代码示例及实战验证。文章分析了硬件、系统和内核层面的典型故障场景,指出现有监控体系的局限性,并提出基于NPD的实时事件捕获与自动化诊断树的改进方案。通过深度集成NPD、设计自动化修复引擎以及展示内核死锁恢复的实战案例,文章详细说明了自愈流程的实现步骤与性能优势。此外,还提供了生产环境部署指南、高可用架构设计及安全防护措施,并展望了机器学习增强故障预测和混沌工程验证的进阶优化方向。全文约1.2万字,适合希望提升Kubernetes集群稳定性的技术人员阅读。
|
4月前
|
存储 人工智能 API
OWL:告别繁琐任务!开源多智能体系统实现自动化协作,效率提升10倍
OWL 是基于 CAMEL-AI 框架开发的多智能体协作系统,通过智能体之间的动态交互实现高效的任务自动化,支持角色分配、任务分解和记忆功能,适用于代码生成、文档撰写、数据分析等多种场景。
1157 13
OWL:告别繁琐任务!开源多智能体系统实现自动化协作,效率提升10倍
|
4月前
|
关系型数据库 Shell 网络安全
定期备份数据库:基于 Shell 脚本的自动化方案
本篇文章分享一个简单的 Shell 脚本,用于定期备份 MySQL 数据库,并自动将备份传输到远程服务器,帮助防止数据丢失。
|
6月前
|
Web App开发 人工智能 JSON
AutoMouser:AI Chrome扩展程序,实时跟踪用户的浏览器操作,自动生成自动化操作脚本
AutoMouser是一款Chrome扩展程序,能够实时跟踪用户交互行为,并基于OpenAI的GPT模型自动生成Selenium测试代码,简化自动化测试流程。
394 17
AutoMouser:AI Chrome扩展程序,实时跟踪用户的浏览器操作,自动生成自动化操作脚本
|
7月前
|
机器学习/深度学习 人工智能 自然语言处理
CogAgent-9B:智谱 AI 开源 GLM-PC 的基座模型,专注于预测和执行 GUI 操作,可应用于自动化交互任务
CogAgent-9B 是智谱AI基于 GLM-4V-9B 训练的专用Agent任务模型,支持高分辨率图像处理和双语交互,能够预测并执行GUI操作,广泛应用于自动化任务。
249 12
CogAgent-9B:智谱 AI 开源 GLM-PC 的基座模型,专注于预测和执行 GUI 操作,可应用于自动化交互任务
|
6月前
|
存储 安全 数据可视化
用Python实现简单的任务自动化
本文介绍如何使用Python实现任务自动化,提高效率和准确性。通过三个实用案例展示:1. 使用`smtplib`和`schedule`库自动发送邮件提醒;2. 利用`shutil`和`os`库自动备份文件;3. 借助`requests`库自动下载网页内容。每个案例包含详细代码和解释,并附带注意事项。掌握这些技能有助于个人和企业优化流程、节约成本。
220 3
|
6月前
|
Web App开发 数据采集 JavaScript
Chrome浏览器实例的TypeScript自动化脚本
Chrome浏览器实例的TypeScript自动化脚本
|
9天前
|
运维 监控 安全
从实践到自动化:现代运维管理的转型与挑战
本文探讨了现代运维管理从传统人工模式向自动化转型的必要性与路径,分析了传统运维的痛点,如效率低、响应慢、依赖经验等问题,并介绍了自动化运维在提升效率、降低成本、增强系统稳定性与安全性方面的优势。结合技术工具与实践案例,文章展示了企业如何通过自动化实现运维升级,推动数字化转型,提升业务竞争力。
|
9月前
|
运维 Linux Apache
,自动化运维成为现代IT基础设施的关键部分。Puppet是一款强大的自动化运维工具
【10月更文挑战第7天】随着云计算和容器化技术的发展,自动化运维成为现代IT基础设施的关键部分。Puppet是一款强大的自动化运维工具,通过定义资源状态和关系,确保系统始终处于期望配置状态。本文介绍Puppet的基本概念、安装配置及使用示例,帮助读者快速掌握Puppet,实现高效自动化运维。
186 4

热门文章

最新文章