公司买的阿里云服务器,快满了发现一些图片是过期不用的。需要批量移动到临时目录然后备份到本地。以备不时之需。
在网上找了很久没有找到合适脚本,然后写了一个shell。
脚本的功能有几点:
1.排除以_o.jpg/_b.jpg/_m.jpg/_s.jpg结尾的的图片
2.只处理2020年的文件夹
3.文件按照移动前目录归类,如果该日期目录不存在就创建一个。
在生产上运行一下还行
#!/bin/bash
raw_dir="/data/images/dakabl/upload"
target_dir="/data/images/dakabl/temp"
s1="2020"
for element in `ls $raw_dir`
do
result=$(echo $element | grep "${s1}")
if [[ "$result" != "" ]]
then
echo "$element include $s1"
dir_old=$raw_dir"/"$element
cd $dir_old
dir_new=$target_dir"/"$element
mkdir $dir_new
find . -type f \( -iname "*.jpg" ! -iname "*_o.jpg" ! -iname "*_m.jpg" ! -iname "*_s.jpg" ! -iname "*_b.jpg" \) -exec mv {} $dir_new \;
fi
done