`
lbxhappy
  • 浏览: 309065 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

shell 遍历目录文件并根据文件名和日期匹配度删除文件

 
阅读更多

 

 shell 遍历目录文件并根据文件名和日期匹配度删除文件

#!/bin/sh  

basedir="/data/nginx/logs"

logdir="${basedir}/app"

datestr=`date -d -1day  +%Y%m%d`

tmpdir="${basedir}/bak/app/${datestr}"

 echo $tmpdir

 if [ ! -x "$tmpdir" ]; then

    mkdir "$tmpdir" -p;

 fi

arr=`ls -l $logdir | grep ^- | awk '{print $NF}' `

for f in $arr

 do

    if [ ${#f} -gt 20 ]; then

 

       s=${f:4:8};

       if [ "$s" -le "$datestr" ]; then

        mv  $logdir/$f $tmpdir;

       fi

    fi

done

#delete before 30days file

datestr=`date -d -30day  +%Y%m%d`;

echo "rm date:${datestr}"

rm -rf "${basedir}/bak/app/${datestr}";

分享到:
评论

相关推荐

    详解shell 遍历文件夹内所有文件并打印绝对路径

    本文将详细介绍如何使用Shell脚本来实现这一功能,并逐步深入探讨更复杂的多级目录遍历方法。 #### 二、基本概念与术语 1. **Shell**: 是一个命令行解释器,用户可以通过它向操作系统发送指令。 2. **脚本**: 由一...

    shell 脚本遍历目录

    采用shell脚本实现遍历文件并将文件打印到标准输出的小脚本,主要是学习。

    【shell】遍历文件夹下所有文件

    对linux命令tree的简单实现,遍历指定文件夹下的所有文件

    shell 递归遍历目录下的所有文件并统一改名的方法

    ### Shell脚本递归遍历目录并统一重命名文件的方法 #### 一、问题背景与需求分析 在日常工作中,可能会遇到需要批量处理文件名称的情况,例如为了方便管理和搜索,需要将某目录及其子目录下的所有文件名统一修改。...

    Shell脚本实现从文件夹中递归复制文件

    ### Shell脚本实现从文件夹中递归复制文件 #### 背景介绍 在日常工作中,有时我们可能需要从多层嵌套的文件夹结构中提取特定的文件或者进行数据整理工作。对于这种需求,手动操作显然是低效且耗时的。此时,利用...

    shell根据文件批量更新文件名

    在Linux系统中,Shell脚本是一种强大的工具,用于自动化任务执行,包括批量处理文件和更改文件名。在我们的场景中,我们需要根据特定的文本内容在文件夹中搜索文件,并对找到的文件进行重命名。这通常涉及到grep命令...

    Linux shell 之 提取文件名和目录名的一些方法总结

    很多时候在使用Linux的shell时,我们都需要对文件名或目录名进行处理,通常的操作是由路径中提取出文件名,从路径中提取出目录名,提取文件后缀名等等。例如,从路径/dir1/dir2/file.txt中提取也文件名file.txt,...

    遍历磁盘目录,遍历所有文件

    在IT领域,遍历磁盘目录并访问所有文件是一项基础且重要的任务,它涉及到操作系统、文件系统和编程语言等多个方面。这项操作常用于文件管理、数据备份、病毒扫描等多种场景。下面将详细介绍如何实现这个功能,并结合...

    使用Shell遍历目录及其子目录中的所有文件方法

    总结来说,通过编写Shell脚本并利用`for`循环和条件判断,我们可以实现遍历目录及其子目录的功能。在实际应用中,可以根据需求调整脚本,例如对特定类型的文件进行操作,或者设置过滤条件来排除不需要处理的文件。...

    批量更改文件名和文件内容

    在IT行业中,批量处理文件名和文件内容是常见的任务,特别是在数据处理、自动化流程和系统维护中。这里我们将深入探讨如何使用Shell脚本来实现这一功能,以及如何通过可视化界面进行操作。 Shell脚本是一种强大的...

    shell脚本递归遍历目录及子目录的例子分享

    总结来说,这三个实例都展示了如何使用Shell脚本递归遍历目录和子目录,以及如何处理这些目录中的文件。递归遍历目录在很多场景下都非常实用,比如备份文件、统计文件信息、清理或重命名文件等。理解并掌握这种技术...

    遍历磁盘目录.rar

    例如,使用C#的`DirectoryInfo`类,我们可以创建一个实例,然后调用`GetFiles()`和`GetDirectories()`方法来获取当前目录下的文件和子目录,并递归地遍历它们。 在Linux或Unix环境中,shell脚本如bash可以使用`for`...

    Shell脚本遍历目录并批量修改文件编码

    在将windows上的jsp网页移植到linux环境中时,发现一个个的转换编码及修改默认编码类型太慢,写此脚本进行尝试文件遍历~ 好久不写,手生了。 代码如下: #!/bin/bash # # SPATH=”/root/chengji/WebRoot” DPATH=”/...

    Linux 遍历目录

    9. **案例分析:** 可以使用`find`命令配合`-exec`或`xargs`来执行特定操作,例如查找所有大小超过1MB的文本文件并删除它们: ```bash find /path/to/search -type f -name "*.txt" -size +1M -exec rm {} \; ``...

    Shell脚本遍历一个日期范围实例

    在IT领域,Shell脚本是一种常用的自动化工具,尤其在Linux或Unix系统中,它能帮助我们执行一系列命令,包括处理文件、系统管理以及各种复杂的任务。在这个实例中,我们将探讨如何使用Shell脚本来遍历一个特定的日期...

    shell备份文件、重命名文件、删除指定文件的3个脚本分享

    它检查参数数量,进入目录,然后根据第二个参数匹配并删除相应的文件。 通过这三个脚本,我们可以学习到如何处理文件操作的基本技巧,如路径切换、条件判断、文件操作命令(如`cp`、`mv`、`rm`)以及参数传递。在...

    shell 文件名中序号名递增

    shell 创建文件,文件名为日期+序号,序号自动递增,用于生成log

    shell中获取n天前的日期

    shell中获取n天前的日期,使用shell获取当前日期n天之前的日期

    Shell处理带空格的文件名的方法

    但是这种命名方式给Linux命令行工具和Shell带来了困扰,因为大多数命令中,都是默认以空格做为值与值之间的分隔符,而不是做为文件名的一部分。 看下面的脚本,我们可以了解的更清楚: 执行的结果如下: 实际上,...

Global site tag (gtag.js) - Google Analytics