我有一個目錄,'Dst目錄',其中有文件和文件夾,我有'src目錄',其中也有文件和文件夾。我想要做的是將'src Directory'的內容移動到'Dst Directory'並覆蓋存在的同名文件。因此,例如'Src Directory \ file.txt'需要移動到'Dst Directory \'並覆蓋現有的file.txt。這同樣適用於某些文件夾,移動文件夾和合並內容與'dst目錄'中的相同文件夾Python - 移動和覆蓋文件和文件夾
我目前使用shutil.move將src的內容移動到dst,但它不會這樣做如果文件已經存在,並且不會合並文件夾;它只會將文件夾放在現有的文件夾中。
更新:使事情變得更清晰;我正在做的是將檔案解壓縮到Dst目錄,然後將Src目錄的內容移到那裏並重新壓縮,從而有效地更新zip檔案中的文件。這將重複添加新文件或新版本的文件等,這就是爲什麼它需要覆蓋和合並
解決:我通過使用distutils.dir_util.copy_tree(src,dst)解決了我的問題,這複製文件夾和從src目錄到dst目錄的文件,並在必要時覆蓋/合併。希望能幫助一些人!
希望有道理, 謝謝!
注意['distutils.dir_util.copy_tree'](https://docs.python.org/dev /distutils/apiref.html#distutils.dir_util.copy_tree)無法複製特殊文件,例如[命名管道](https://en.wikipedia.org/wiki/Named_pipe)(拋出'distutils.errors.DistutilsFileError')。 –