sh autolog backup

2023-05-16

shell sh 每天备份log文件

#!/bin/bash

# 每天备份log文件

log_path="/home/fdipzone/logs"         # log目录
backup_path="/home/fdipzone/logs/bak"  # 备份目录
expire=30                              # 备份文件只保留30天

function backup(){

    if [ -d "$log_path" ] && [ -d "$backup_path" ]; then

        for file in $(find $log_path -maxdepth 1 -name "*.log" -type f); do
            copy $file
        done

    else
        echo "${log_path} or ${backup_path} not exists"
    fi

}

function copy(){

    ofile=$1
    dpath="${backup_path}/$(date -d yesterday +%Y/%m/%d/)"
    dfile="${dpath}${ofile##*/}"

    if [ -f "$ofile" ] && [ -s "$ofile" ]; then
        
        if [ ! -d "$dpath" ]; then # create folder
            mkdir -p "$dpath"
        fi

        cp "$ofile" "$dfile" # copy file
        cat /dev/null > "$ofile" # create empty file
        echo "${ofile} copy to ${dfile} success"
    fi

}

function clearexpire(){

    if [ -d "$backup_path" ]; then
        echo ${expire:=30} > /dev/null
        $(find $backup_path -name "*.log" -type f -mtime +$expire -exec rm {} \;) # delete expire file
        $(find $backup_path -mindepth 1 -depth -empty -type d -exec rm -r {} \;) # delete empty folder
    else
        echo "${backup_path} not exists"
    fi

}

backup
clearexpire

exit 0

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

sh autolog backup 的相关文章

  • 在 GKE 集群中安装 Velero 时无法提取映像“velero/velero-plugin-for-gcp:v1.1.0”

    我正在尝试安装和配置 Velero 以进行 kubernetes 备份 我已遵循link https github com vmware tanzu velero plugin for gcp setup在我的 GKE 集群中配置它 安装顺
  • 如何将 SQL Server .bak 文件导入 MySQL?

    标题是不言自明的 有没有办法直接进行此类导入 来自 SQL Server 的 BAK 文件采用 Microsoft 磁带格式 MTF 参考 http www fpns net willy msbackup htm http www fpns
  • mysqldump 与 db 位于单独的文件中

    我正在编写一个单行命令 将所有数据库备份到各自的名称中 而不是使用将所有数据库转储到一个 sql 中 例如 db1 保存到 db1 sql db2 保存到 db2 sql 到目前为止 我收集了以下命令来检索所有数据库 mysql uunam
  • 如何使用 SQL Server Express 安排每日备份? [复制]

    这个问题在这里已经有答案了 我正在运行一个小型 Web 应用程序 以 SQL Server Express 2005 作为后端 我可以使用 SQL 脚本创建备份 但是我想每天安排此操作 作为额外的选项 应该有 我想只保留最后的 X 个备份
  • php PDO::FETCH_ASSOC 在存储过程中备份后未检测到选择

    我有一个存储过程 它会进行备份 然后在出现错误或类似情况时返回 1 或 0 Create procedure dbo sp IWBackup as begin declare route varchar 500 answer int 0 s
  • 为什么 Docker 中的 pg_restore 出现段错误?

    我正在 docker 容器内测试 postgres 数据库的备份 恢复过程 我像这样转储我的数据库 docker exec ti my postgres container pg dump Fc U postgres gt db dump
  • 如何可靠地恢复 MySQL blob

    多年来我一直使用以下命令备份 MySQL 数据库 mysqldump myDatabaseName u root gt myBackupFile sql 备份似乎工作正常 然后我想将其中一个备份恢复到另一个命名的数据库 所以我这样做了 my
  • 火鸟远程备份

    我想备份 firebird 数据库 我正在使用 gbak exe 实用程序 效果很好 但是 当我想从远程计算机进行备份时 备份文件存储在服务器文件系统上 有没有办法强制 gbak 实用程序下载备份文件 Thanks 备份存储在 Firebi
  • 如何备份/移动 LXC 容器?

    我想要 lxc 容器备份 我们有服务器12 04 LTS ubuntu server我已经安装了LXC 1 0 0 alpha2在里面 我想将我们的 ubuntu 服务器更新到 14 04 LTS 所以我想做的是备份 LXC 容器 gt 将
  • Python:打开文件而不创建锁

    我正在尝试用 Python 创建一个脚本来备份一些文件 但是 这些文件可以随时重命名或删除 我不希望我的脚本通过锁定文件来阻止这种情况 在备份过程中 该文件应该仍然可以随时删除 我怎样才能在Python中做到这一点 而且 会发生什么 如果无
  • 如何将 Solr 索引转储/备份到文件?

    我正在运行一个虚拟专用服务器 每天午夜 所有文件都会自动备份由 VPS 提供商提供 所以我需要exportSolr 索引到文件 这样如果有一天出现问题 我将能够import它轻松返回到 Solr 我怎样才能做到这一点 Solr 数据库是一个
  • 如何通过pyodbc备份数据库

    当使用 pyodbc 游标执行时 备份语句不能在事务中使用 pyodbc 似乎在默认事务内执行查询 我也尝试过使用自动提交模式或在备份语句之前添加提交语句 这两个都不起作用 can t execute the backup statemen
  • 意外删除表时恢复 cassandra 集群数据

    如您所知 Cassandra 集群具有复制功能 可以防止数据丢失 即使集群中的某些节点发生故障也是如此 但是 如果管理员不小心删除了一个包含大量数据的表 并且该命令已经由集群中的所有副本执行 这是否意味着您丢失了该表并且无法恢复它 有什么建
  • 使用 mysqldump 转储和加载 MySQL InnoDB 数据库的最快方法是什么?

    我想使用 mysqldump 和 MySQL 5 1 创建一个包含大约 40 个 InnoDB 表和大约 1 5GB 数据的数据库副本 能够实现最快转储和加载数据的最佳参数是什么 即 single transaction 此外 将数据加载到
  • 基于 GPO DisplayName 而不是 Id 备份 GPO

    因此 我正在备份域控制器的所有 GPO 我注意到 Backup GPO cmdlet 备份 GPOS 的方式非常不友好 默认情况下 它为每个以 ID 命名的 GPO 创建一个文件夹 该文件夹甚至与其 GPOID GUID 不匹配 这是一个示
  • 使用 C# 创建 SQL Server 备份文件 (.bak) 到任何位置

    我正在尝试用 C 编写简单的应用程序 它允许我备份 压缩并通过 ftp 发送我的 SQL Server 数据库 我遇到的一个问题是 如果我尝试在 C Program Files Microsoft SQL Server MSSQL 3 MS
  • 如何在 iOS 中注册自定义文件类型

    我目前正在创建一个应用程序 我想让用户在其中备份他们的文件 plist m4a 我压缩文件并将扩展名更改为自定义扩展名 专门针对我的应用程序 例如 MyBackup 然后 用户可以通过电子邮件或 iTunes 文件共享进行导出 我已经阅读过
  • iOS:如何创建核心数据库的备份副本?以及如何导出/导入该副本?

    我想为我的应用程序的用户提供创建核心数据数据库备份的可能性 特别是在他切换到新设备等情况下 我该怎么做呢 特别是如何重新导入该文件 我的意思是 假设他制作了数据库的备份副本 然后更改了大量内容并想要重置为以前保存的备份副本 我该怎么做呢 T
  • 无法打开备份设备。操作系统错误5

    下面是我用来备份的查询 创建一个 bak 我的数据库 但是 每当我运行它时 我总是收到此错误消息 消息 3201 16 级 状态 1 第 1 行无法打开备份设备 C Users Me Desktop Backup MyDB Bak 操作系统
  • 按时间顺序将多个文件夹提交到 git 中

    我有数百个网站备份 每个文件夹一个 我想将它们放入 git 存储库中 每个备份作为一个版本 这些变化主要涉及图像文件和每天 2 个数据库备份 大小约为 25 GB 并且不断增加 有没有办法告诉 git 获取其中一个文件夹并将其提交到存储库中

随机推荐

  • php 发送带附件邮件

    emailclass php lt class CMailFile var subject var addr to var text body var text encoded var mime headers var mime bound
  • ubuntu系统使用命令

    1 复位面板 打开终端 xff0c 终端窗口打开之后 xff0c 立即在提示符后面输入下列命令 gconftool recursive unset apps panel rm rf gconf apps panel pkill gnome
  • Windows安装Anaconda并且配置国内镜像教程

    前言 我们在学习 Python 的时候需要不同的 Python 版本 xff0c 关系到电脑环境变量配置换来换去很是麻烦 xff0c 所以这个时候我们需要一个虚拟的 Python 环境变量 xff0c 我之前也装过 virtualenv v
  • linux常用命令

    1 ls 显示目录文件夹及文件 使用方式 ls lt a 显示目录下所有文件及文件夹包括 与 A 显示目录下所有文件及文件夹不包括 与 l 显示目录下所有文件及文件夹详细信息 t 按修改时间排序 倒序 F 如目录后加 如可执行文件后加 r
  • shell语法

    1 数组 定义数组 array 61 34 163 34 34 21cn 34 34 sina 34 34 qq 34 获取数组长度 echo array 遍历数组 for arr in array do echo arr done 2 转
  • php 替换敏感字符串

    StrFilter class php lt php string filter class Date 2013 01 09 Author fdipzone Ver v1 0 Func public replace 替换非法字符 publi
  • php返回数据格式化类

    DataReturn class php lt php 返回數據格式化類 Date 2011 08 15 Author fdipzone class DataReturn class start private type private x
  • 强制更新图片缓存

    強制更新圖片緩存 64 param Array files 要更新的圖片 64 param int version 版本 function force reload file files 61 array version 61 0 html
  • php XML文件解释类

    XMLParser class php lt php XML 文件分析类 Date 2013 02 01 Author fdipzone Ver 1 0 func loadXmlFile xmlfile 读入xml文件输出Array loa
  • php CSS Update Class

    CSSUpdate class php lt php css 更新类 更新css文件内图片的版本 Date 2013 02 05 Author fdipzone Ver 1 1 Func update Ver 1 1 增加search ch
  • sh cssupdate

    shell sh 更新 css图片版本 bin bash csstmpl path 61 34 home fdipzone php csstmpl 34 css path 61 34 home fdipzone php css 34 rep
  • JS小游戏-宇宙战机

    游戏介绍 业余时间写的一个飞行射击游戏 xff0c 纵向 xff0c 共六关 游戏需求 1 战机可发射子弹 xff0c 子弹可通过获取道具升级 2 战机可放bomb xff0c 可获取道具增加数量 3 战机可蓄力攻击 4 道具有三种 xff
  • php __call 与 __callStatic

    php 5 3 后新增了 call 与 callStatic 魔法方法 call 当要调用的方法不存在或权限不足时 xff0c 会自动调用 call 方法 callStatic 当调用的静态方法不存在或权限不足时 xff0c 会自动调用 c
  • $CF1153A\ Serval\ and\ Bus$

    看大佬的代码都好复杂 xff08 不愧是大佬 orz 蒟蒻提供一种思路 因为求的是最近的车对吧 qwq 所以我们可以用一个 while 循环所以没必要去用什么 for 至于这是 div2 的第一题还是比较水的 code include lt
  • Sublime Text配置JDK

    操作系统 xff1a Windows 7 SP1 Sublime Text是一款轻量级代码编辑器 虽然收费 xff0c 但可以无限期试用 支持多种语言的代码高亮 xff0c 但一些不能直接编译运行 xff0c 今天我为大家带来Sublime
  • JS小游戏-仙剑翻牌

    游戏介绍 这是一个翻牌配对游戏 xff0c 共十关 1 游戏随机从42张牌中抽取9张进行游戏 xff0c 每组为2张相同的牌 xff0c 共18张牌 2 连续翻到两张相同的为胜利 xff0c 当9组全部翻到则过关 如不是翻到连续两张相同的
  • memcached 常用命令及使用说明

    memcached 查看方法 格式 telnet ip port 例如 telnet localhost 11211 退出命令 xff1a quit 一 存储命令 存储命令格式 xff1a lt command name gt lt key
  • PHPMailer - PHP email transport class

    在服务器安装 sendmail sudo apt get install sendmail 启动 sendmail sudo etc init d sendmail start 修改 php ini mail function SMTP 6
  • PHP 遍历文件夹及文件类及处理类

    FindFile class php 用于遍历目录文件 lt php 遍历文件夹及文件类 Date 2013 03 21 Author fdipzone Ver 1 0 class FindFile public files 61 arra
  • sh autolog backup

    shell sh 每天备份log文件 bin bash 每天备份log文件 log path 61 34 home fdipzone logs 34 log目录 backup path 61 34 home fdipzone logs ba