python按文件名拷贝文件_python 拷贝特定后缀名文件,并保留原始目录结构的实例...

如下所示:

#!/usr/bin/python

# -*- coding: UTF-8 -*-

import os

import shutil

def cp_tree_ext(exts,src,dest):

"""

Rebuild the director tree like src below dest and copy all files like XXX.exts to dest

exts:exetens seperate by blank like "jpg png gif"

"""

fp={}

extss=exts.lower().split()

for dn,dns,fns in os.walk(src):

for fl in fns:

if os.path.splitext(fl.lower())[1][1:] in extss:

if dn not in fp.keys():

fp[dn]=[] fp[dn].append(fl)

for k,v in fp.items():

relativepath=k[len(src)+1:] newpath=os.path.join(dest,relativepath)

for f in v:

oldfile=os.path.join(k,f)

print("拷贝 ["+oldfile+"] 至 ["+newpath+"]")

if not os.path.exists(newpath):

os.makedirs(newpath)

shutil.copy(oldfile,newpath)

#用法如下:

#

#cp_tree_ext(exts,src,dest)

#

#exts:以空格分隔的字符串,可多个拓展名,如"bat txt"

#src:原目录

#dest:目标目录,如果不存在,则建立

cp_tree_ext('doc docx','/home/lincoln/python/copy/source','/home/lincoln/python/copy/target')

只是段代码,直接调用cp_tree_ext(exts,src,dest) 方法即可。

以上这篇python 拷贝特定后缀名文件,并保留原始目录结构的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持软件开发网。

您可能感兴趣的文章:python使用paramiko实现远程拷贝文件的方法Python实现拷贝多个文件到同一目录的方法用python实现的可以拷贝或剪切一个文件列表中的所有文件python 实现文件的递归拷贝实现代码Python基于sftp及rsa密匙实现远程拷贝文件的方法python检测文件夹变化,并拷贝有更新的文件到对应目录的方法Python实现拷贝/删除文件夹的方法详解Python多进程写入同一文件的方法python多进程实现文件下载传输功能Python使用文件锁实现进程间同步功能【基于fcntl模块】Python实现的多进程拷贝文件并显示百分比功能示例

你可能感兴趣的:(python按文件名拷贝文件)