在python中合并两个文件夹

在python中合并两个文件夹,python,merge,Python,Merge,我需要合并两个文件夹 文件夹名为12345和12345_ 我如何将两者合并 我已经试过了,但最终还是得到了“12345” 对于文件中的文件: 子文件夹=os.path.join(destpath,文件[:6]) 如果不是os.path.isdir(子文件夹): os.makedirs(子文件夹) 复制(os.path.join(根目录,文件),子文件夹) 您可以使用类似的方法,将文件夹1中的所有文件复制到文件夹2,以便文件夹2将包含文件夹1和文件夹2中的所有文件: #!/usr/bin/env

我需要合并两个文件夹

文件夹名为12345和12345_

我如何将两者合并

我已经试过了,但最终还是得到了“12345”

对于文件中的文件:
子文件夹=os.path.join(destpath,文件[:6])
如果不是os.path.isdir(子文件夹):
os.makedirs(子文件夹)
复制(os.path.join(根目录,文件),子文件夹)

您可以使用类似的方法,将文件夹1中的所有文件复制到文件夹2,以便文件夹2将包含文件夹1和文件夹2中的所有文件:

#!/usr/bin/env python

import subprocess as sbp
import os

path=raw_input('Please enter a path\n')
fol = os.listdir(path)
p2 = raw_input('Please enter a path\n')

for i in fol:
    p1 = os.path.join(path,i)
    p3 = 'cp -r ' + p1 +' ' + p2+'/.'
    sbp.Popen(p3,shell=True)

从python中,您还可以调用
rsync
,这是为此而设计的

import subprocess

## define your paths
path1 = '/path/to/12345/'
path2 = '/path/to/12345_/'

## where to place the merged data
merged_path = '/path/to/merged/'

## write an rsync commands to merge the directories
rsync_cmd = 'rsync' + ' -avzh ' + path1 + ' ' + path2 + ' ' + merged_path

## run the rsync command
subprocess.run(rsync_cmd, shell=True)

相关的: