python - 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'
我应该怎么办 ?谢谢
解决方案
os.rename()
不会跨驱动器移动文件。相反,请尝试使用shutil.move
:
import shutil
shutil.move(src, new_destination)
推荐阅读
- r - 如何计算R中向量中有序序列的数量
- splunk - 我可以使用没有聚合功能的 splunk 时间表吗?
- android - 将数据类的数据添加到作为另一个数据类 Kotlin Androidx 参数的可变列表
- reactjs - 如何自定义批量工具栏的标题
- 反应管理员
- swift - 用属性查找和替换属性字符串中的字符?
- excel - 如何从一系列单元格中选择一个随机的空单元格,直到选择了范围内的所有单元格?
- docker - 创建一个新的 docker 镜像并捕获外部卷内容
- swift - 记录错误 Jazzy “0% 的文档覆盖率,包含 0 个未记录的符号”
- sql - 古怪更新的定义
- javascript - 未捕获的类型错误:无法读取数组 2d 上未定义的属性“0”