Regrouper dans un dossier des fichiers
Bonjour, je bloque sur un exercice ou je dois écrire un script qui regroupe dans un dossier les fichiers dont les noms commencent par un préfixe donné en paramètre :
Le script a 3 parametre
-le chemin/nom du dossier a partir duquel la recherche est faite
-le prefixe
-le chemin/nom du dossier dans lequel les fichiers vont être déplacés.
Exemple :
main.py DSC /IMAGES/MyPictures va regrouper dans le dossier /IMAGES/MyPictures tous les fichiers dont le nom commence par DSC contenus dans le répertoire d'accueil .
si le fichier qui va être déplacé a le même nom qu'un fichier déjà déplacé, il faut modifier son nom pour lui ajouter un suffixe : par exemple s'il existe déjà DSC000024.png le second fichier se nommera DSC000024_2.png .
Pour le script il ne doit utiliser aucune commande Shell hormis celle avec os.system() pour - creer le répertoire qui va recueillir les fichiers égarés ;
- déplacer un fichier
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| #!/usr/bin/env python3
import os,sys,re,shutil
if len(sys.argv)>=3:
repertoire = os.mkdir(sys.argv[2])
code = sys.argv[1]
path = "/"
def parcours (path) :
liste = os.listdir(path)
for fichier in liste:
if(os.path.isfile(fichier)):
resultat = re.search("code.*\.png",fichier)
if resultat:
shutil.move("/fichier","repertoire") # ici je veux déplacer le fichier du répertoire d'accueil dans celui de /IMAGES/MyPictures
if (os.path.exist(file)):
os.rename("code.*\.png","code.*_[0-9]\.png")
else:
parcours(fichier)
parcours(path) |
Aidez moi s'il vous plait j'ai besoin de votre aide merci d'avance