Deplacer des fichiers et les renommer

L'auteur de ce sujet a trouvé une solution à son problème.
Auteur du sujet

Salut, Je cherche a creer un petit programme en .bat qui me permettrait de placer des fichiers d'un dossier parent vers des sous-dossiers.

Je rencontre un probleme lorsque les fichiers ont le meme nom. Auquel cas l'un des 2 fichiers est supprime..

Mes fichiers ont pour nom : "Projet business 1 150816" "Projet business 1 150816 Version 1" "Projet business 1 150816 Version 2" "Projet business 2 150816" "Projet business 2 150816 Version 1" "Projet business 4 150816" "Projet business 4 150816 Version 1" "Projet business 5 150816" "Projet business 5 150816 Version 1"

On notera l'absence de numero 3. 150816 correspond au 15 aout 2016. 160816 correspond au 16 aout 2016.

J'ai donc tout betement fait :

1
2
3
4
move "RepertoireParent\Projet business 1\*.*pdf" "RepertoireBusiness1"
move "RepertoireParent\Projet business 2\*.*pdf" "RepertoireBusiness2"
move "RepertoireParent\Projet business 4\*.*pdf" "RepertoireBusiness4"
move "RepertoireParent\Projet business 5\*.*pdf" "RepertoireBusiness5"

Des lors, tous les fichiers qui commencent par "Projet business 1" vont dans le sous-dossier correspondant. Mais c'est la que mon probleme commence. Je voudrai comparer toutes les dates de fichiers et regarder s'il y a une Version 1, Version 2, etc. qui existe. Si il y a des versions anterieures, je souhaiterai les supprimer pour ne garder que la plus recente.

Le probleme d'une boucle avec incrementation c'est que ca prendra trop de temps a faire toutes les combinaisons de dates. Genre ce qui serait bien c'est que le programme fonctionne mois par mois (en disant quel mois et quelle annee) on veut trier, mais ca me semble complique..

Dans la meme idee, j'ai un dossier avec des fichiers "Fichier 10", "Fichier 11", etc. J'ai fait un mini code pour copier un fichier dans ce dossier mais comment renommer le nouveau fichier avec le meme nom que les autres mais en ajustant le numero en l'incrementant de 1 ?

Merci de vos conseils et si vous avez des debuts de codes :)

Édité par abrahan

+0 -0

Je suis pas très bon dans ce domaine donc il existe peut être une meilleure solution.

Es-tu obligé d'utiliser un fichier .bat ? Parce qu'utiliser un petit script dans un langage plus haut niveau (python ou même C par exemple) te permettrait d'avoir accès a des parsers et de modifier tes noms de fichiers tout bêtement.

Pour ton premier problème il me semble qu'il y a mieux à faire que de copier puis supprimer, il faudrait juste bouger ce qui t'intéresse. Si tes fichiers ont toujours la même racine, tu devrais peut être choisir tout les fichiers qui s'appellent "Projet business 1 150816*" puis trouver la dernière version et faire ce que tu as à faire, et incrémenter le numéro de projet jusqu'à ne plus en trouver (je suppose que comme sous unix tu peux savoir ce que te renvoie la commande) puis augmenter la date d'un jour (un autre petit script qui te renvoie le jour suivant celui que tu met en paramètre est une bonne idée) et continuer ainsi jusqu'à arriver à la date actuelle ou à la date donnée en paramètre sous le même format.

Pour ton deuxième problème, j'utiliserais un truc comme du C ou du Python et ça devient un jeu d'enfant.

+0 -0
Vous devez être connecté pour pouvoir poster un message.
Connexion

Pas encore inscrit ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte