[root@localhost logs]# cat tar_7day.sh
#!/bin/bash
#压缩日期【当天的前一天】
todayStamp_1=`date -d "-1 day" +%Y%m%d`
#压缩日期【当天的前七天】
sevendaysagoStamp=`date -d "-7 day" +%Y%m%d`
Dirname=/mnt/Dirn_ame
Compressed_name=`ls $Dirname/*.log|awk -F '.' '{print $1}'`
 
#压缩7天日志
[[ -d $Dirname ]] && cd $Dirname && find . -name "*" -mtime -7 -type f |xargs tar -zcvf ${Compressed_name}${sevendaysagoStamp}-${todayStamp_1}.tar.gz

if [ ! -d backup ];then
  mkdir backup && mv ${Compressed_name}${sevendaysagoStamp}-${todayStamp_1}.tar.gz backup/
else
  mv ${Compressed_name}${sevendaysagoStamp}-${todayStamp_1}.tar.gz backup/
fi

sleep 2
# find命令find后面如果是.[当前目录缩写,那么后面的排除目录也必须是缩写,否则不生效];如果是全量目录${Dirname},那么后面的排除目录也必须是全量目录,如果是缩写就不生效。
[[ -d $Dirname ]] && cd $Dirname && find . ! -path "./*.tar.gz" ! -path "./*.log" -name "*" -mtime -7 -type f |xargs rm -rf
 
以上就是压缩脚本
被压缩目录为:
[root@localhost logs]# ll /mnt/Dirn_ame/
total 8
-rw-r--r-- 1 root root   0 Oct 17 02:49 archery-competition.log
-rw-r--r-- 1 root root   0 Oct  1 08:00 archery-competition.log.2023-10-00-0
-rw-r--r-- 1 root root   0 Oct  1 08:10 archery-competition.log.2023-10-01-0
-rw-r--r-- 1 root root   0 Oct  2 08:10 archery-competition.log.2023-10-02-0
-rw-r--r-- 1 root root   0 Oct  3 08:10 archery-competition.log.2023-10-03-0
-rw-r--r-- 1 root root   0 Oct  4 08:10 archery-competition.log.2023-10-04-0
-rw-r--r-- 1 root root   0 Oct  5 08:10 archery-competition.log.2023-10-05-0
-rw-r--r-- 1 root root   0 Oct  6 08:10 archery-competition.log.2023-10-06-0
-rw-r--r-- 1 root root   0 Oct  7 08:10 archery-competition.log.2023-10-07-0
-rw-r--r-- 1 root root   0 Oct  8 08:10 archery-competition.log.2023-10-08-0
-rw-r--r-- 1 root root   0 Oct  9 08:10 archery-competition.log.2023-10-09-0
-rw-r--r-- 1 root root   0 Oct 10 08:10 archery-competition.log.2023-10-10-0
-rw-r--r-- 1 root root   0 Oct 11 08:10 archery-competition.log.2023-10-11-0
-rw-r--r-- 1 root root   0 Oct 12 08:10 archery-competition.log.2023-10-12-0
-rw-r--r-- 1 root root   0 Oct 13 08:10 archery-competition.log.2023-10-13-0
-rw-r--r-- 1 root root   0 Oct 14 08:10 archery-competition.log.2023-10-14-0
-rw-r--r-- 1 root root   0 Oct 15 08:10 archery-competition.log.2023-10-15-0
-rw-r--r-- 1 root root   0 Oct 16 08:10 archery-competition.log.2023-10-16-0
-rw-r--r-- 1 root root   0 Oct 17 08:10 archery-competition.log.2023-10-17-0
-rw-r--r-- 1 root root   0 Oct 18 08:10 archery-competition.log.2023-10-18-0
-rw-r--r-- 1 root root   0 Oct 19 08:10 archery-competition.log.2023-10-19-0
 
压缩后效果

[root@localhost Dirn_ame]# ll
total 4
-rw-r--r-- 1 root root 1158 Oct 20 04:47 20231013-20231019.tar.gz
-rw-r--r-- 1 root root 0 Oct 17 02:49 archery-competition.log
-rw-r--r-- 1 root root 0 Oct 1 08:00 archery-competition.log.2023-10-00-0
-rw-r--r-- 1 root root 0 Oct 1 08:10 archery-competition.log.2023-10-01-0
-rw-r--r-- 1 root root 0 Oct 2 08:10 archery-competition.log.2023-10-02-0
-rw-r--r-- 1 root root 0 Oct 3 08:10 archery-competition.log.2023-10-03-0
-rw-r--r-- 1 root root 0 Oct 4 08:10 archery-competition.log.2023-10-04-0
-rw-r--r-- 1 root root 0 Oct 5 08:10 archery-competition.log.2023-10-05-0
-rw-r--r-- 1 root root 0 Oct 6 08:10 archery-competition.log.2023-10-06-0
-rw-r--r-- 1 root root 0 Oct 7 08:10 archery-competition.log.2023-10-07-0
-rw-r--r-- 1 root root 0 Oct 8 08:10 archery-competition.log.2023-10-08-0
-rw-r--r-- 1 root root 0 Oct 9 08:10 archery-competition.log.2023-10-09-0
-rw-r--r-- 1 root root 0 Oct 10 08:10 archery-competition.log.2023-10-10-0
-rw-r--r-- 1 root root 0 Oct 11 08:10 archery-competition.log.2023-10-11-0
-rw-r--r-- 1 root root 0 Oct 12 08:10 archery-competition.log.2023-10-12-0

drwxr-xr-x 2 root root 121 Oct 24 02:59 backup

[root@localhost pre-jf]# ll backup/
total 16
-rw-r--r-- 1 root root 4247 Oct 24 02:59 archery-competition20231017-20231023.tar.gz     

tar命令备份压缩7天生产日志的更多相关文章

  1. linux使用tar命令打包压缩时排除某个文件夹或文件

    今天在使用tar命令进行文件夹打包压缩的时候,需要打包压缩masalaPage目录,但是该目录中的2017,2016两个目录中的文件不进行打包压缩 所以通常使用的tar -zcvf masalaPag ...

  2. linux zip命令 tar命令 【压缩、解压缩】参数列表:

    linux zip命令参数列表:   -a 将文件转成ASCII模式 -F 尝试修复损坏的压缩文件 -h 显示帮助界面 -m 将文件压缩之后,删除源文件   -n 特定字符串 不压缩具有特定字尾字符串 ...

  3. 03_每周 5 使用 tar 命令备份/var/log 下的所有日志文件

    ]# vim /root/logbak.shtar -czf log-`date +%Y%m%d`.tar.gz /var/log ]# crontab -e -u root00 03 * * 5 / ...

  4. tar命令加密压缩

    场景 Centos6下使用加密压缩,可以从A机器到B机器解压. 可用在kali上解压就不行. 命令 解包 tar zxvf FileName.tar 打包 tar czvf FileName.tar ...

  5. tar命令加密压缩/解密解压

    在tar解压文件时发生下面错误信息 gzip: stdin: not in gzip format tar: Child returned status 1 tar: Error is not rec ...

  6. linux中tar命令(打包、压缩、解压)、zip和unzip、rar多种压缩文件

    一.名词解释 打包:将一大堆文件或目录变成一个总的文件[tar命令] 压缩:将一个大的文件通过一些压缩算法变成一个小文件[gzip,bzip2等] Linux中很多压缩程序只能针对一个文件进行压缩,这 ...

  7. tar 命令压缩时报错 tar: Removing leading `/' from member names

    在使用tar命令进行压缩打包的时候我们常常会遇到下面的错误.虽然它不会影响我们最后的压缩打包,但是间接说明了我们的命令是有问题的.接下来我们来看看解决的方法. 报错内容: [root@haha ~]# ...

  8. tar命令-解压和压缩文件

    tar命令 可以用来压缩打包单文件.多个文件.单个目录.多个目录. Linux打包命令_tar tar命令可以用来压缩打包单文件.多个文件.单个目录.多个目录. 常用格式: 单个文件压缩打包 tar ...

  9. 学习Linux tar 命令:最简单也最困难

    摘要:在本文中,您将学习与tar 命令一起使用的最常用标志.如何创建和提取 tar 存档以及如何创建和提取 gzip 压缩的 tar 存档. 本文分享自华为云社区<Linux 中的 Tar 命令 ...

  10. liunx之tar 命令

    tar命令 可以用来压缩打包单文件.多个文件.单个目录.多个目录. Linux打包命令_tar tar命令可以用来压缩打包单文件.多个文件.单个目录.多个目录. 常用格式: 单个文件压缩打包 tar ...

随机推荐

  1. IMX6ULL基本环境搭建

    基本环境搭建 1 交叉编译工具 在虚拟机中安装交叉编译工具,为后续开发做准备. 1.1 工具版本 工具版本:Linaro Releases 当前虚拟机为64位系统,因此下载64位系统的工具: $ un ...

  2. WXS 模块

    https://developers.weixin.qq.com/miniprogram/dev/framework/view/wxs/01wxs-module.html 2.1.概述 WXS(Wei ...

  3. LVGL8文本框设置长文本会自动滚动到文本最后解决方法

    在创建完成并设置完文本之后加一句 lv_obj_scroll_to_y(obj,0, LV_ANIM_OFF); 就可以了 原因:官方控件里面设置文本的接口里面设置文本后会设置一次光标位置到文本末尾, ...

  4. 填IP那个就算是接口式开发,这回随便填

    ///////////////////////////////////////////////////////////using namespace std; #include<stdlib.h ...

  5. 洛谷 P4343 自动刷题机

    题目链接:自动刷题机 思路 二分典题,两个二分判断出可能的最大值和最小值.需要注意当删掉y行代码后,当前代码行数小于0时需要将代码行数重新赋值为0,然后需要注意二分的n最大值的边界,因为x[i]的最大 ...

  6. Jenkins的搭建及配置

    一.搭建Jenkins及Jenkins的配置 1.从搭建Jenkins开始: 采用的时下载jenkins.msi,下载安装包,然后进行安装的方式,下载Jenkins的地址:https://www.je ...

  7. 16-Docker核心概念

    Docker镜像 Docker 镜像类似于操作系统镜像,可以将它理解为一个只读的模板. 例如,一个镜像可以包含一个基本的操作系统环境,里面仅安装了Apache应用程序,可以把它称为一个Apache镜像 ...

  8. 实验10.3层vlan互通实验

    # 实验10.三层Vlan互通实验 本实验是跨vlan路由的第二种形式,比第一种形式更常见常用一些. 需要用到三层交换机. 实验组 交换机配置 不同于以往,本次的交换机使用了三层交换的功能 SW vl ...

  9. Bike Sharing Analysis(二)- 假设检验方法

    假设检验 假设检验是推论统计学(inferential statistics)的一个分支,也就是对一个较小的.有代表性的数据组(例如样本集合)进行分析与评估,并依此推断出一个大型的数据组(例如人口)的 ...

  10. GUI测试

    标签(空格分隔): GUI 我要用到 Chrome 浏览器,所以需要先下载 Chrome Driver 并将其放入环境变量.接下来,你可以用自己熟悉的方式建立一个空的 Maven 项目,然后在 POM ...