Python中使用os.system调用Xcopy复制文件夹及子文件夹的疑问
解决Xcopy复制文件夹本身的问题
你的代码当前仅复制了原文件夹内的内容,未复制文件夹本身,核心问题在于Xcopy的路径设置和参数搭配,以下是两种可行的解决方法:
方法一:让目标路径包含原文件夹名称
如果你希望将bd整个文件夹复制到目标目录下(比如最终路径为C:\boleta_v1\新建文件夹\bd),直接调整目标路径的定义,同时添加/I参数避免交互提示:
import os source = "C:\\boleta_v1\\bd" folder_name = "新建文件夹" # 目标路径包含原文件夹名bd target = f"C:\\boleta_v1\\{folder_name}\\bd" output = os.system(f"""xcopy "{source}" "{target}" /E /I""")
方法二:给原路径加反斜杠,复制文件夹到目标目录
如果目标路径是父目录(比如希望bd文件夹被放到C:\boleta_v1\新建文件夹下),在原路径末尾添加反斜杠,明确告诉Xcopy要复制文件夹本身:
import os source = "C:\\boleta_v1\\bd\\" # 末尾加反斜杠,指定复制文件夹本身 folder_name = "新建文件夹" target = f"C:\\boleta_v1\\{folder_name}" output = os.system(f"""xcopy "{source}" "{target}" /E /I""")
关键参数说明
/E:复制所有子文件夹,包括空文件夹/I:当目标路径不存在时,自动将其视为目录创建,避免命令行交互询问
内容的提问来源于stack exchange,提问作者Emkrypted
相关产品推荐
相关产品推荐

