Python小工具之检索

search.py

功用:检索path目录下,包含filename的文件,并将其移动到newpath下相同名称的文件夹内

入参如下:

path:所要检索的目录

filename:文件名匹配字符

newpath:新路径


import os
import sys
import shutil
##Search the file has this filename which is in this path, and if has then copy it to the newpath with the same parent direction.
def search(path, filename, newpath):
    queue = []
    queue.append(path);
    parent = ''
    while len(queue) > 0:
        tmp = queue.pop(0)
        if (os.path.isdir(tmp)):
            for item in os.listdir(tmp):
                queue.append(os.path.join(tmp, item))
                parent = os.path.basename(tmp)
                print 'parent = '+parent
        elif (os.path.isfile(tmp)):
            name = os.path.basename(tmp)
            print 'name = ' + name
            dirname = os.path.dirname(tmp)
            full_path = os.path.join(dirname, name)
            queuetmp = []
            queuetmp.append(dirname)
            parent = os.path.basename(queuetmp.pop(0))
            if filename in name:
                des_path = newpath + '/' + parent
                print 'dest_path = ' + des_path + ' ; parent =' + parent
                if os.path.exists(des_path):
                    shutil.move(full_path, des_path)
                else:
                    os.mkdir(des_path)
                    shutil.move(full_path, des_path)

search(sys.argv[1], sys.argv[2], sys.argv[3])

使用方法 python search.py path name newpath

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容