ファイルとサブディレクトリを持つ/ a/b/cというディレクトリがあります。 /x/y/zディレクトリに/ a/b/c/*をコピーする必要があります。どのようなPythonメソッドを使用できますか?ディレクトリの内容をPythonでディレクトリにコピー
私はshutil.copytree("a/b/c", "/x/y/z")
を試しましたが、pythonは/ x/y/zを作成しようとし、error "Directory exists"
を生成します。
ファイルとサブディレクトリを持つ/ a/b/cというディレクトリがあります。 /x/y/zディレクトリに/ a/b/c/*をコピーする必要があります。どのようなPythonメソッドを使用できますか?ディレクトリの内容をPythonでディレクトリにコピー
私はshutil.copytree("a/b/c", "/x/y/z")
を試しましたが、pythonは/ x/y/zを作成しようとし、error "Directory exists"
を生成します。
このコードが動作しています。
from distutils.dir_util import copy_tree
# copy subdirectory example
fromDirectory = "https://stackoverflow.com/a/b/c"
toDirectory = "/x/y/z"
copy_tree(fromDirectory, toDirectory)
あなたはまた、(**サブフォルダのワイルドカードを使用して)再帰的にすべてのパスを収集するためにglob2を使用して、shutil.copyfileを使用することができ、パスに
glob2を保存リンク:https://code.activestate.com/pypm/glob2/
この関数では、Pythonライブラリは時代遅れです。私は正しく動作するものを作った:
import os
import shutil
def copydirectorykut(src, dst):
os.chdir(dst)
list=os.listdir(src)
nom= src+'.txt'
fitx= open(nom, 'w')
for item in list:
fitx.write("%s\n" % item)
fitx.close()
f = open(nom,'r')
for line in f.readlines():
if "." in line:
shutil.copy(src+'/'+line[:-1],dst+'/'+line[:-1])
else:
if not os.path.exists(dst+'/'+line[:-1]):
os.makedirs(dst+'/'+line[:-1])
copydirectorykut(src+'/'+line[:-1],dst+'/'+line[:-1])
copydirectorykut(src+'/'+line[:-1],dst+'/'+line[:-1])
f.close()
os.remove(nom)
os.chdir('..')
ディレクトリを移動またはコピーしようとしていますか?あなたのタイトルには動きがありますが、あなたのコンテンツにはコピーが含まれています。これらは2つの異なるものなので、あなたが意味するものはまさに重要です。 –
前と後の例を挙げて、エフェクトが欲しいものを明確にすることもできますか? – Xymostech
あなたのコメントをありがとう、私は見出しを更新します。それはコピーであり、移動ではありません。 – prosseek