当前位置 博文首页 > 后台实时分流文件的shell脚本

    后台实时分流文件的shell脚本

    作者:admin 时间:2021-02-08 09:26

    将bill 文件夹下的文件按一定规则(文件名奇偶)拷贝至bill1,bill2 文件夹下。
    更新bill1,bill2 处理进度标签(更新file.max)
    file3 为bill 目录下当前最新文件的标签,正常情况下每分钟会更新(格式为:20121016122100)

    复制代码 代码如下:

    #!/bin/bash
    #for wanggy 2012/10/16
    bill1=/infosms/bill1
    bill2=/infosms/bill2
    file_max=`cat file3`
    cd /infosms/bill
    while :
    echo "开始"
    do
    if [ $file_max != `cat file3` ];then
    echo "不相等,处理"
    #判断file3 11-12位(奇偶)
    num1=`cut -c 11-12 file3`
    #如果不加10# 取模的时候遇到08会出错。(8进制判断?)
    num=$((10#$num1%2))
    #num=$(($num1%2))
    #获取bill下当前文件(最新)
    file_name=B`cat file3`
    echo "最新文件:$file_name"
    case $num in
    1)
    echo "odd"
    cp -a $file_name ../bill1
    echo `cat file3` >../bill1/file.max

    0)
    echo "even"
    cp -a $file_name ../bill2
    echo `cat file3` >../bill2/file.max

    esac
    echo "对file_max给最新的值"
    file_max=`cat file3`
    else
    echo "相等,不处理,退出!"
    # file_date=`cat $filename`
    # exit 1
    fi
    echo "等待10秒,下一次判断..."
    sleep 10
    done

    js
    下一篇:没有了