5

Pythonshutil.copytreeはあまり柔軟ではありません。コピー中に許可を無視するためのサポートを追加する最も簡単な方法は何copytreeですか (その実装を書き直す必要はありません)?

それ以外の場合は、copytree次のように失敗します。

(…)”[Errno 45] Operation not supported: ‘/path/foo/bar’”
4

3 に答える 3

5

スレッドセーフではありません (または一般的に推奨されます) が、使い捨てのスクリプトには問題ありません:

輸入シャティル

_orig_copystat = shutil.copystat
shutil.copystat = ラムダ x, y: x

shutil.copytree(src, dst)

shutil.copystat = _orig_copystat
于 2013-06-10T10:50:47.837 に答える
3

あなたはshutil.py標準のPythonディストリビューションを持っています(Ubuntuでは、私のものは/usr/lib/python2.6たとえば下にあります; WindowsはそうかもしれませC:\Python26\libん)。copytree 関数の長さはわずか 38 行 (コメントを数えない場合は 34 行) であり、docstring の最後には次のように明示的に記載されています。

XXX Consider this example code rather than the ultimate tool.

したがって、最も簡単な方法は、正直に言うと、copytree に数行を変更/追加するか、別のライブラリを見つけることです。

于 2009-08-20T00:58:06.207 に答える