我有一个脚本,用于使用 rsync 将文件推送回我的家用 PC。成功推送的文件名被添加到 sqlite 数据库中,因此它们不会再次被推送(因为我只想要 1 路镜像)。无论如何,我遇到的问题是,虽然脚本递归地沿着源路径向下并基于定义的扩展名推送文件,但文件沿着相同的目标根目录向下传递。
我想要的是使目标文件夹结构与源文件夹结构相同。
我想我必须在 destDir 路径中添加一些东西,但不确定是什么:
for root, dirs, files in os.walk(sourceDir):
for file in files:
//If some filtering criteria
print("Syncing new file: "+file)
cmd=["rsync"]
cmd.append(os.path.join(root, file))
cmd.append(destDir+ "/")
p=subprocess.Popen(cmd,shell=False)
if p.wait()==0:
rememberFile(file)