1.シェルスクリプトdir10.shを記述して、現在の日付の365日前にディレクトリYYYY-MM-DDを作成します。以下に10個のファイル$ RANDOM.logがあります。
vim dir10.sh
#!/bin/bash
for i in {1..365} ;do
DIR=`date -d "-$i day" +%F`
mkdir /data/test/$DIR
for j in {1..10};do
touch /data/test/$DIR/$RANDOM.log
done
cd ..
done
スクリーンショットを実行します(treeコマンドシステムはデフォルトでは使用できません。yuminstalltree-yをインストールする必要があります)
2.YYYY-MM-DDディレクトリ内のファイルをYYYY-MM / DDに移動します
vim mv_dir10.sh
#!/bin/bash
DIR=/data/test
cd $DIR
for DIR in * ;do
YYYY_MM=`echo $DIR|cut -d'-' -f1,2`
DD=`echo $DIR|cut -d'-' -f3`
[ -d $YYYY_MM/$DD ] || mkdir -p $YYYY_MM/$DD
mv $DIR/* $YYYY_MM/$DD
done
----------------------------------------------------------
#将YYYY-MM-DD目录移动到YYYY-MM下
#!/bin/bash
DIR=/data/test
cd $DIR
for DIR in * ;do
YYYY_MM=`echo $DIR|cut -d'-' -f1,2`
[ -d $YYYY_MM ] || mkdir $YYYY_MM
mv $DIR $YYYY_MM
done