Python shutil.copytree- 권한을 무시하십시오
문제
파이썬 shutil.copytree
그다지 유연하지 않습니다. 복사하는 동안 권한 무시에 대한 지원을 추가하는 가장 간단한 방법은 무엇입니까? copytree
(구현을 다시 작성하지 않아도)?
그렇지 않으면, copytree
다음과 같이 실패합니다.
(…)”[Errno 45] Operation not supported: ‘/path/foo/bar’”
해결책
당신은 가지고 있습니다 shutil.py
표준 파이썬 분포에서 (우분투에서, 광산은 /usr/lib/python2.6
예를 들어; 창문 일 수 있습니다 C:\Python26\lib
?). CopyTree 함수의 길이는 38 줄 (주석을 세지 않으면 34)이며 Docstring의 끝에는 다음과 같습니다.
XXX Consider this example code rather than the ultimate tool.
따라서 가장 간단한 방법은 실제로 카피 트리를 위해 몇 줄을 변경/추가하거나 다른 도서관을 찾는 것입니다.
다른 팁
스레드-안전 (또는 일반적으로 권장되는)이 아니지만 스크립트 스크립트에 대해서는 괜찮습니다.
import shutil _orig_copystat = shutil.copystat shutil.copystat = lambda x, y: x shutil.copytree(src, dst) shutil.copystat = _orig_copystat
제휴하지 않습니다 StackOverflow