Comment copier tous les fichiers d'un répertoire à un autre en python. J'ai le chemin source et le chemin de destination dans une chaîne.copier plusieurs fichiers en python
Répondre
Vous pouvez utiliser os.listdir() pour obtenir les fichiers dans le répertoire source, os.path.isfile() pour voir si elles sont des fichiers réguliers (y compris des liens symboliques sur les systèmes * nix) et shutil.copy faire la copie.
Le code suivant copie uniquement les fichiers ordinaires du répertoire source dans le répertoire de destination (je suppose que vous ne souhaitez pas que des sous-répertoires soient copiés).
import os
import shutil
src_files = os.listdir(src)
for file_name in src_files:
full_file_name = os.path.join(src, file_name)
if (os.path.isfile(full_file_name)):
shutil.copy(full_file_name, dest)
Si vous ne souhaitez pas copier l'intégralité de l'arborescence (avec des sous-répertoires, etc.), utilisez ou glob.glob("path/to/dir/*.*")
pour obtenir une liste de tous les noms de fichiers, bouclez sur la liste et utilisez shutil.copy
pour copier chaque fichier.
for filename in glob.glob(os.path.join(source_dir, '*.*')):
shutil.copy(filename, dest_dir)
Remarque: Vous devrez peut-être vérifier les résultats glob avec os.path.isfile() pour être sûr qu'ils sont des noms de fichiers. Voir aussi la réponse de GreenMatt. Alors que glob renvoie uniquement le nom de fichier comme os.listdir, il renvoie également les noms de répertoires. Le modèle '*. *' Peut suffire, tant que vous n'avez pas de noms de fichiers sans extension, ou de points dans les noms de répertoires. – Steven
import os
import shutil
os.chdir('C:\\') #Make sure you add your source and destination path below
dir_src = ("C:\\foooo\\")
dir_dst = ("C:\\toooo\\")
for filename in os.listdir(dir_src):
if filename.endswith('.txt'):
shutil.copy(dir_src + filename, dir_dst)
print(filename)
def recursive_copy_files(source_path, destination_path, override=False):
"""
Recursive copies files from source to destination directory.
:param source_path: source directory
:param destination_path: destination directory
:param override if True all files will be overridden otherwise skip if file exist
:return: count of copied files
"""
files_count = 0
if not os.path.exists(destination_path):
os.mkdir(destination_path)
items = glob.glob(source_path + '/*')
for item in items:
if os.path.isdir(item):
path = os.path.join(destination_path, item.split('/')[-1])
files_count += recursive_copy_files(source_path=item, destination_path=path, override=override)
else:
file = os.path.join(destination_path, item.split('/')[-1])
if not os.path.exists(file) or override:
shutil.copyfile(item, file)
files_count += 1
return files_count
Il pourrait aider à donner une explication verbale de votre code –
Je pense que vous voulez dire ** écraser **, pas ** déroger ** –
- 1. plusieurs fichiers os.unlink en python
- 2. Copier les fichiers dans le dossier d'un répertoire en python
- 3. Python ftplib - télécharger plusieurs fichiers?
- 4. Ant: copier le même groupe de fichiers à plusieurs endroits
- 5. gnu faire copier plusieurs fichiers à un seul emplacement
- 6. Importer plusieurs fichiers à partir d'un dossier en Python
- 7. Produire plusieurs fichiers à partir d'un seul fichier en python
- 8. Plusieurs fichiers de configuration avec Python ConfigParser
- 9. Comment copier une image distante en python?
- 10. Recréer Postgres COPIER directement en Python?
- 11. en utilisant R pour copier des fichiers
- 12. Copier des fichiers différents?
- 13. Copier des fichiers avec des noms unicode
- 14. PHP: comment copier un fichier temporaire en plusieurs endroits?
- 15. VS 2010. Post-construction. Copier des fichiers dans plusieurs répertoires/plusieurs chemins de sortie
- 16. Copier des fichiers dans des répertoires comme spécifié dans une liste de fichiers avec python
- 17. Copier des fichiers sur le chemin d'accès réseau ou conduire en utilisant python sur OSX
- 18. comment copier en profondeur une file d'attente en python
- 19. Comment télécharger plusieurs fichiers Excel dans plusieurs dossiers FTP en utilisant python ou VB?
- 20. BASH copier tous les fichiers sauf un
- 21. Copier des fichiers avec MsBuild
- 22. Email plusieurs contacts en Python
- 23. importer des fichiers en python
- 24. Liste et fichiers en python
- 25. Lire des fichiers en python
- 26. Dézipper les fichiers en python
- 27. Comment copier des fichiers avec Windows Batch?
- 28. copier des fichiers après la construction réussie
- 29. diviser PDF en plusieurs fichiers en C#
- 30. Python: fichiers fractionnés à l'aide de séparateurs à plusieurs blocs
[Comment copier un répertoire entier de fichiers dans un répertoire existant en utilisant Python?] (Http://stackoverflow.com/questions/1868714/how-do-i-copy -an-whole-directory-of-files-into-a-existing-directory-using-pyth) –