2021-07-2_shell脚本-讲目录YYYY-MM-DD/中的所有文件移动到YYYY-MM/DD/下

2021/7/26 7:08:08

本文主要是介绍2021-07-2_shell脚本-讲目录YYYY-MM-DD/中的所有文件移动到YYYY-MM/DD/下,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

#生成YYYY-MM-DD/目录并在目录下创建文件

#!/bin/bash
for I in {1..365} ;do #创建过去一年以日期命名的目录
        DIR=`date -d "-$I day" +%F`
        mkdir /data/test/$DIR
        for j in {1..10} ;do #在目录下创建10个随机命名的文件
                touch /data/test/$DIR/$RANDOM.log
        done
done

#移动文件到YYYY-MM/DD/目录下

#!/bin/bash
DIR=/data/test #定义变量为/data/test路径
cd $DIR #到/data/test路径下
for DIR1 in * ;do #因为现在已经在/data/test目录下,所以直接使用*表示/data/test下所有文件
        YM=`echo $DIR1 |cut -d"-" -f1,2` #取出年月部分的关键字段,并赋值给变量YM
        DD=`echo $DIR1 |cut -d"-" -f3` #取出日的关键字段,并赋值给DD
        [ -d $YM/$DD ] || mkdir -p $YM/$DD &> /dev/null #判断目录否存在,不存在则创建
        mv $DIR1/* $YM/$DD #移动文件到目录下
done


这篇关于2021-07-2_shell脚本-讲目录YYYY-MM-DD/中的所有文件移动到YYYY-MM/DD/下的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程