python shutil.copytree


語法:

shutil.copytree(src, dst, symlinks=False, ignore=None, copy_function=copy2, ignore_dangling_symlinks=False,dirs_exist_ok=False)

將以 src 為根起點的整個目錄樹拷貝到名為 dst 的目錄並返回目標目錄。dirs_exist_ok 指明是否要在 dst 或任何丟失的父目錄已存在的情況下引發異常。

目錄的權限和時間會通過copystat() 來拷貝,單個文件則會使用copy2() 來拷貝。

如果 symlinks 為真值,源目錄樹中的符號鏈接會在新目錄樹中表示為符號鏈接,並且原鏈接的元數據 在平台允許的情況下也會被拷貝;如果為假值或省略,則會將被鏈接文件的內容和元數據拷貝到新目 錄樹。

當 symlinks 為假值時,如果符號鏈接所指向的文件不存在,則會在拷貝進程的末尾將一個異常添加 到Error 異常中的錯誤列表。如果你希望屏蔽此異常那就將可選的 ignore_dangling_symlinks 旗標設為 真值。請注意此選項在不支持os.symlink() 的平台上將不起作用。

如果給出了 ignore,它必須是一個可調用對象,該對象將接受copytree() 所訪問的目錄以及os. listdir() 所返回的目錄內容列表作為其參數。由於copytree() 是遞歸地被調用的,ignore可調用 對象對於每個被拷貝目錄都將被調用一次。該可調用對象必須返回一個相對於當前目錄的目錄和文件 名序列(即其第二個參數的子集);隨后這些名稱將在拷貝進程中被忽略。ignore_patterns() 可 被用於創建這種基於glob風格模式來忽略特定名稱的可調用對象。

如果發生了(一個或多個)異常,將引發一個附帶原因列表的Error。

如果給出了copy_function,它必須是一個將被用來拷貝每個文件的可調用對象。它在被調用時會將源路 徑和目標路徑作為參數傳入。默認情況下,copy2() 將被使用,但任何支持同樣簽名(與copy() 一 致)都可以使用。 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM