python在两个变量上运行for循环,并将变量作为rsync目标传递

python在两个变量上运行for循环,并将变量作为rsync目标传递,python,loops,for-loop,rsync,Python,Loops,For Loop,Rsync,下面的代码在bash中同步两个目录时运行良好;然而,事实证明,在python中也很难做到这一点。 我将展示这两种尝试,你给我反馈 猛击 在python中,我尝试了这一点,但没有任何效果。我想用python执行与上面相同的操作 #!/usr/bin/env python3 import os def func_sync(): dest1 = '/home/user/test/new_test1/' dest2 = '/home/user/test/new_test2/' zipped = zi

下面的代码在bash中同步两个目录时运行良好;然而,事实证明,在python中也很难做到这一点。 我将展示这两种尝试,你给我反馈 猛击

在python中,我尝试了这一点,但没有任何效果。我想用python执行与上面相同的操作

#!/usr/bin/env python3

import os
def func_sync():

dest1 = '/home/user/test/new_test1/'
dest2 = '/home/user/test/new_test2/'
zipped = zip(dest1,dest2)
sync = os.system("rsync -av '/home/user/Documents/testsync_p/' \(for data in zipped)")
return sync

func_sync()

我该如何改进它?

这解决了上述问题。利用shutil模块

    import shutil
    src = "/home/user/Documents/src_dir"
    dst = ("/home/user/Documents/dst_1", "/home/user/Documents/dst_2")
    for i in dst:
        shutil.copytree(src, i)
    import shutil
    src = "/home/user/Documents/src_dir"
    dst = ("/home/user/Documents/dst_1", "/home/user/Documents/dst_2")
    for i in dst:
        shutil.copytree(src, i)