根据文件名对文件进行分类,移动到以部分文件名命名的文件夹下

[~/Japan_Project/ENM_Migration/Migration_Activity/temp]$ ls
Clssified_CV.py*
134727_L2G-KASUGAISHI011W_ENM_134727_180919_AFTER.zip
134727_L2G-KASUGAISHI011W_ENM_134727_180919_BEFORE.zip
134728_L2G-chenghuang_ENM_134727_180919_AFTER.zip
134728_L2G-chenghuang_ENM_134727_180919_BEFORE.zip

[~/Japan_Project/ENM_Migration/Migration_Activity/temp]$ python Classified_CV.py >> ./Clssified_CV.Log
---  new folder...---
---start move 134727_L2G-KASUGAISHI011W_ENM_134727_180919_AFTER.zip to 134727_L2G-KASUGAISHI011W---
---file move done---
---start move 134727_L2G-KASUGAISHI011W_ENM_134727_180919_BEFORE.zip to 134727_L2G-KASUGAISHI011W---
---file move done---
---  new folder...---
---start move 134728_L2G-chenghuang_ENM_134727_180919_AFTER.zip to 134728_L2G-chenghuang---
---file move done---
---start move 134728_L2G-chenghuang_ENM_134727_180919_BEFORE.zip to 134728_L2G-chenghuang---
---file move done---

[~/Japan_Project/ENM_Migration/Migration_Activity/temp]$ ls
134727_L2G-KASUGAISHI011W/  134728_L2G-chenghuang/  Clssified_CV.py* Clssified_CV.Log

[~/Japan_Project/ENM_Migration/Migration_Activity/temp]$ cd 134727_L2G-KASUGAISHI011W/
[~/Japan_Project/ENM_Migration/Migration_Activity/temp/134727_L2G-KASUGAISHI011W]$ ls
134727_L2G-KASUGAISHI011W_ENM_134727_180919_AFTER.zip
134727_L2G-KASUGAISHI011W_ENM_134727_180919_BEFORE.zip

[~/Japan_Project/ENM_Migration/Migration_Activity/temp]$ cd 134728_L2G-chenghuang/
[~/Japan_Project/ENM_Migration/Migration_Activity/temp/134728_L2G-chenghuang]$ ls
134728_L2G-chenghuang_ENM_134727_180919_AFTER.zip
134728_L2G-chenghuang_ENM_134727_180919_BEFORE.zip

脚本为Classified_CV.py

#!/usr/bin/python
import os, shutil, re

def mkdir(path):

    folder = os.path.exists(path)

    if not folder:
        os.makedirs(path)
        print("---  new folder...---")
    else:
        pass

rootdir = "./"
folder_list = []
for parent,dirnames,filenames in os.walk(rootdir):  #遍历当前目录的文件
    for filename in filenames:
        if not (re.match('\w*.py',filename) or re.match('\w*.Log',filename)):  #这里过滤掉工作目录下的python脚本和生成的log文件
            folder_name = filename.split('_ENM_',1)[0]  #对文件名进行一次拆分,拆分标志为_ENM_,这里取拆分后的列表的第一个元素
            mkdir(folder_name)
            if (folder_name in filename) and not os.path.exists("./" + folder_name + "/" + filename):
                print("---start move " + filename + " to " + folder_name + "---")
                shutil.move(filename,"./" + folder_name)    #移动文件到相关联的文件夹
                print("---file move done---")
  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值