使用Python复制目录结构
是否可以用python编写脚本来执行以下操作使用Python复制目录结构,python,file,copy,Python,File,Copy,是否可以用python编写脚本来执行以下操作 Basic Operation : copy files with the proper directory structure. 给定文件名列表,程序应扫描目录,并将目录中的文件复制到维护文件夹结构的目标目录。这类似于eclipse中的“通过创建适当的子文件夹导出文件系统”功能。您可以使用 更新:您可以查看,看看它是如何实现的。更新:我刚才看到的问题是复制目录结构和文件。我下面的答案是针对没有文件的目录结构和yossi指出的python3。我仍然
Basic Operation : copy files with the proper directory structure.
给定文件名列表,程序应扫描目录,并将目录中的文件复制到维护文件夹结构的目标目录。这类似于eclipse中的“通过创建适当的子文件夹导出文件系统”功能。您可以使用
更新:您可以查看,看看它是如何实现的。更新:我刚才看到的问题是复制目录结构和文件。我下面的答案是针对没有文件的目录结构和yossi指出的python3。我仍然想保留我的答案,希望不要被否决 我发现silviubogan投赞成票的答案对解决这个问题很有帮助(我也曾多次面对这个问题),因此我的方法如下:
shutil.copytree()
接受一个copy\u函数
,因此您只需要一个不复制文件的复制函数。下面是对shutil.copy2()稍作修改的版本:
def copy_dir(src, dst, *, follow_sym=True):
if os.path.isdir(dst):
dst = os.path.join(dst, os.path.basename(src))
if os.path.isdir(src):
shutil.copyfile(src, dst, follow_symlinks=follow_sym)
shutil.copystat(src, dst, follow_symlinks=follow_sym)
return dst
然后调用
shutil.copytree(source,target,copy_function=copy_dir)
从source
在target上重新创建文件夹和子文件夹结构,shutil.copytree复制函数仅在python 3I上可用。我刚刚意识到我甚至没有正确回答这个问题。当我写我的答案时,我阅读了这个问题,所以只有目录结构应该被复制,而不是文件,但事实上,文件这个问题是针对文件和文件夹的。请标记正确的答案,这对其他观众也有帮助