我有一个包含许多文件的文件夹,如下所示: 00606E00C3B3()_ 0_20140721070542_8770.jpg
我手动做的是:
mkdir 140601
mv *20140601*.jpg 140601/
对于每一天我都需要一个脚本自动执行此操作,并且我想按照以下命令启动它:
sh sort.sh datestart dateend
示例:
sh sort.sh 140601 140630
我该怎么做?求助。
答案 0 :(得分:1)
for filename in *_201*.jpg; do
part=1${filename#*201} # YYMMDD and everything after
yymmdd=${part:0:6}
mkdir -p $yymmdd
mv "$filename" $yymmdd/
是的,这将在2019年之后失败,并且如果您在文件名中将“201”作为年份之前的数字部分。这些错误留作练习。 :)