首页 > 解决方案 > OSError: [WinError 17] 系统无法将文件移动到其他磁盘驱动器

问题描述

我正在尝试自动将文件从C:/驱动器移动到D:/驱动器,

import shutil
class MyHandler(FileSystemEventHandler):
    def on_modified(self, event):
        for filename in os.listdir(folder_to_track):
            src = folder_to_track + "/" + filename
            new_destination = folder_destination+ "/" + filename
            #os.rename(src, new_destination)
            shutil.move(src, new_destination)

folder_to_track = '/Users/sia/Downloads/Telegram Desktop'
folder_destination = 'D:/test_folder'
event_handler = MyHandler()
observer = Observer()
observer.schedule(event_handler, folder_to_track, recursive=True)
observer.start()

我遇到了这个错误:

OSError: [WinError 17] The system cannot move the file to a different disk drive: '/Users/sia/Downloads/Telegram Desktop/13940616000112.pdf' -> 'D:/test_folder/13940616000112.pdf'

我应该怎么办 ?谢谢

标签: python

解决方案


os.rename()不会跨驱动器移动文件。相反,请尝试使用shutil.move

import shutil
shutil.move(src, new_destination)

推荐阅读