Python:将目录c:\ FLASH的内容复制到所有连接的USB闪存驱动器

时间:2018-11-01 13:28:15

标签: python python-3.x shutil pathlib

我需要将一些文档,文件夹和文件从本地驱动器上的一个目录复制到所有连接的USB闪存驱动器中。

当目标位置也是文件夹时,一切正常,但是如果目标位置是USB驱动器根目录,那么我总是会收到错误消息:

  

错误:[WinError 5]访问被拒绝:“ E:\\”

我认为问题出在第二个反斜杠。

import wmi
import os
import shutil
import pathlib
import errno

src = pathlib.WindowsPath("c:/FLASH")

def clone(src, dst):
    try:
        shutil.copytree(src, dst)
    except OSError as e:
        if e.errno == errno.ENOTDIR:
            shutil.copy(src, dst)
        elif e.errno == errno.EACCES:
            print('Error: %s' % e)
    else:
        print('Error: %s' % e)


c = wmi.WMI()
for drive in c.Win32_LogicalDisk():
    print(drive.Caption, drive.Description)
    if drive.DriveType == 2:
        dst = pathlib.PureWindowsPath(drive.Caption, '\\')
        clone(src, dst)

0 个答案:

没有答案