当前,我正在一个项目中,该项目正在同步两个文件夹。在以下示例中,我的文件夹将广告 Folder_1命名为源,将 Folder_2命名为目标。
我已经完成了第一点的一半工作,可以将文件从Folder_1复制到Folder_2。发送我可以将文件从Folder_2复制到Folder_1的部分仍然保留。
以下是我的代码
import os, shutil
path = 'C:/Users/saqibshakeel035/Desktop/Folder_1/'
copyto = 'C:/Users/saqibshakeel035/Desktop/Folder_2/'
files =os.listdir(path)
files.sort()
for f in files:
src = path+f
dst = copyto+f
try:
if os.stat(src).st_mtime < os.stat(dst).st_mtime:
continue
except OSError:
pass
shutil.copy(src,dst)#this is the case when our file in destination doesn't exist
=
print('Files copied from'+ path +'to' + copyto+ '!')
我可以修改或执行哪些操作,以使两个文件夹完全同步? 在此先感谢:)
答案 0 :(得分:1)
(与您的方法不同,但是可以按照查询的要求完成工作)
使用dirsync
的简单代码:
from dirsync import sync
source_path = '/Give/Source/Folder/Here'
target_path = '/Give/Target/Folder/Here'
sync(source_path, target_path, 'sync') #for syncing one way
sync(target_path, source_path, 'sync') #for syncing the opposite way
有关更多选项,请参见此处的文档: dirsync - PyPI
当然,您可以根据需要手动添加异常处理。