среда, 3 февраля 2010 г.

Рекурсивное копирование содержимого каталога на Python

Возникла необходимость рекурсивного копирования содержимого каталога

import os, string, shutil


src = "C:\\from"
dst = "C:\\to"

def copy_tree(src,dst):
    for path, dirs, files in os.walk(src):
        dir = string.replace(path,src,"").strip("\\")
        new_path = os.path.join(dst,dir)
        if not os.path.exists(new_path):
            dir_util.mkpath(new_path)
        for file in files:
            file_from = os.path.join(path, file)
            file_to   = os.path.join(new_path, file)
            shutil.copyfile(file_from, file_to)

Комментариев нет: