• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    find命令实例 linux日志定期迁移实现方法

    节内容:
    linux系统中,使用find命令定期迁移linux日志的方法。

    一,find命令格式

    find  pathname  --options  [-exec -print -ok ..]

    二,find命令参数

    pathname:find命令查找的目录路径 
    -print:find命令将匹配的文件输出到标准输出 
    -exec:find命令对匹配的文件执行该参数给出的shell命令.格式为: command {} \; 
    -ok:类似与exec的作用

    三,find命令选项

    -name:按照文件名进行查找 
    -perm:按文件权限来查找 
    -user:按文件的用户主查找 
    -group:按文件的用户组查找 
    -type:查找某一类型的文件 
        b -- 块设备文件 
            d -- 目录 
            c -- 字符设备文件 
            p -- 管道文件 
            l -- 符号链接文件 
            f -- 普通文件 
    -mtime:按照文件的更改时间来查找文件 
        -n -- 表示文件更改时间距现在n天以内 
            +n -- 表示文件更改时间距现在n天以前

    四,日志迁移脚本

    使用了find命令的mtime参数,将2个星期前的日志文件统一迁移到指定目录下。


    复制代码
    代码如下:

    #!/bin/bash
    # site: a href="https://www.jb51.net">www.jb51.net/a>
    #1.标准定义
    backup_dir="/backup/log"
    keep_days=14
    week_num=`date +%W`
    flag=`expr $week_num % 2`

    #2.需要迁移目录
    test1="/var/log/nginx/test1"

    migrate_dir=($test1)


    #3.迁移备份,每两周执行一次
    if [ $flag -eq 1 ];then
    for dir in ${clean_dir[*]}
    do
    if [ -d $dir ]; then
    #构建迁移目录
    if [ ! -d $backup_dir$dir ];then
    mkdir -p $backup_dir$dir
    fi
    #文件迁移
    for file in `find $dir -type f -mtime +$keep_days -exec ls {} \;`
    do
    mv $file $backup_dir$dir
    done
    fi
    done
    fi


    Crontab每两周执行日志迁移脚本


    复制代码
    代码如下:

    #日志定期迁移脚本
    0 4 * * 7/2 /home/wangzhengyi/scripts/clean-scripts/migrate.sh

    按文件大小查找

    find命令的size参数可以按照文件大小进行查找,size的大小选项如下:



    例如,查找指定目录下大于10k的文件,命令:

    上一篇:Linux find命令实例教程 15个find命令用法
    下一篇:linux find命令忽略某个或多个子目录的实例
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    find命令实例 linux日志定期迁移实现方法 find,命令,实例,linux,日志,