由于之前项目上考虑不周,路径配置的有问题,现在需要在已有的目录中某一级增加一层目录,需要解决几个问题;
1 | /data/Model3/WeatherForecast/CAMX/2017/05/01/{d1,d2,d3} |
- 多级目录,多个参数,CAMX/2017/05/01 这四个参数是变化的
- 判断父级目录是否存在,存在后增加一层目录
- 移动之前的数据到当前目录 以下是我写的脚本,能满足使用,稍显繁琐,求优化!以下是执行前后的效果对比图(使用tree -L 5 > 2.txt生成)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24#!/bin/bash
dir='/data/Model3/WeatherForecast'
#dir1="NAQMPSDAY"
dir1="CAMX CAMxDAY CMAQDAY CMAQ.WRF NAQMPS NAQMPSDAY WRF WRFCHEM WRFCHEMDAY"
dir2="2016 2017"
for i1 in $dir1;
do
for i2 in $dir2;
do
for i3 in {01..12};
do
for i4 in {01..31};
do
dir4="$dir/$i1/$i2/$i3/$i4"
# echo $dir4
if [ -d $dir4 ];then
cd $dir4
mkdir $dir4/00
mv d* $dir4/00
fi
done
done
done
done