[R] Renommer automatiquement un fichier

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
jeanmimigab
Niveau 5
Niveau 5
Messages : 123
Enregistré le : sam. 08 oct. 2011 14:01
Status : Hors ligne

[R] Renommer automatiquement un fichier

#1

Message par jeanmimigab »

Bonsoir tlm et bonne année...

Voilà mon souci...

Je voudrais copier un fichier.txt dans un dossier qui contient déjà un fichier.txt du même nom mais sans l'écraser...

Si j'utilise filecopy ou filemove >> FileCopy("rapport.txt", @scriptdir & "\BACKUP\rapport.txt", 1) ou >> FileMove("rapport.txt", @scriptdir & "\BACKUP\rapport.txt", 1)

L'ancien rapport est écrasé :?

Je voudrait savoir si une fonction permettrai de renommer automatiquement le fichier lors de sa copie (par exemple en ajoutant [1] ( fichier[1].txt, fichier[2].txt etc....) ou bien par exemple ajouter une date+heure à la fin du nom ( fichier_date_heure.txt )

Sans me donner la solution clef en main, pourriez vous m'indiquer une fonction qui serait adéquate ( l'aide de filecopy et filemove ne parle pas de cette option )

merci d'avance :wink:
Modifié en dernier par jeanmimigab le mer. 04 janv. 2012 20:44, modifié 1 fois.
Avatar du membre
PandiPanda
Membre émérite
Membre émérite
Messages : 656
Enregistré le : mar. 19 juil. 2011 14:03
Localisation : Bruxelles
Status : Hors ligne

Re: [..] Renommer automatiquement un fichier

#2

Message par PandiPanda »

Il vous suffit de vérifier si dans le dossier ou vous voulez copié le fichier existe deja avec le meme nom
FileExists ( "path" )
Et ensuite faire les modification nécessaire dans la partie "dest".

Code : Tout sélectionner

FileCopy ( "source", "dest" [, flag] )
La seule moralité qui tienne dans un monde cruel est la chance. Impartiale. Équitable. Vraie
lesolutionneur
Niveau 7
Niveau 7
Messages : 368
Enregistré le : ven. 09 déc. 2011 11:25
Status : Hors ligne

Re: [..] Renommer automatiquement un fichier

#3

Message par lesolutionneur »

Il demandait automatique mais oui, c'est la solution, après, le mieux est de lister les fichiers pour vérifier la présence de [1], [2], [3]...

Ou alors faire une boucle while genre :

Code : Tout sélectionner

$path ="Z:\machin\truc\chose\bidule\Document Secret"
$work = $path
$i = 1
While not FileExists ($work)
$i = $i + 1
$work = $path & "[" & $i & "]"
Wend
 
J'espère t'avoir aidé ;)
Avatar du membre
DimVar
Niveau 10
Niveau 10
Messages : 870
Enregistré le : ven. 30 mai 2008 15:08
Status : Hors ligne

Re: [..] Renommer automatiquement un fichier

#4

Message par DimVar »

Personnellement, j'aurais opté pour un horodatage. Quasi aucun risque d’écraser.
Soit la commande suivante :

Code : Tout sélectionner

FileCopy ($source,$nomDeFichier & @HOUR & "_" & @MIN & "_" & @SEC,8)
Tout dépends de la fréquence à laquelle tu créés les fichiers.
Si c'est quotidien, tu peux rajouter @mday au debut de l'horodatage.

Cdlt.
N'évoquons pas la pierre, les jeunes risqueraient d'en poire !
Avatar du membre
jeanmimigab
Niveau 5
Niveau 5
Messages : 123
Enregistré le : sam. 08 oct. 2011 14:01
Status : Hors ligne

Re: [..] Renommer automatiquement un fichier

#5

Message par jeanmimigab »

Bonsoir les amis,

Que de solutions proposées :D

J'ai opté pour celle qui correspond le mieux à mon attente (celle de DimVar) et qui en plus c'est la plus simple pour mon faible niveau... :mrgreen:

Code : Tout sélectionner

$source = "MyJob.txt"
$nomDeFichier = @scriptdir & "\BACKUP\Rapport_MyJob_du_"
FileCopy ($source,$nomDeFichier & @MDAY & "_" &@MON & "_" &@YEAR & "_" & @HOUR & "_" & @MIN & "_" & @SEC & ".txt",8)
Grâce à vous j'ai encore appris beaucoup de choses....

Merci beaucoup à tout le monde pour le coup de pouce :wink:

JM
Avatar du membre
jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 2282
Enregistré le : lun. 30 mars 2009 22:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: [R] Renommer automatiquement un fichier

#6

Message par jchd »

Attention, ce code peut parfaitement ne pas fonctionner comme prévu et créer des fichiers avec une date incohérente ou complètement décalée dans le temps... ou écraser des fichiers déjà existants.

A ne pas utiliser dans un contexte "sérieux" !
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Avatar du membre
DimVar
Niveau 10
Niveau 10
Messages : 870
Enregistré le : ven. 30 mai 2008 15:08
Status : Hors ligne

Re: [R] Renommer automatiquement un fichier

#7

Message par DimVar »

jchd a écrit :...créer des fichiers avec une date incohérente ou complètement décalée dans le temps... ou écraser des fichiers déjà existants.
Bonjour,

Dans quel cas ?

Merci.
N'évoquons pas la pierre, les jeunes risqueraient d'en poire !
Avatar du membre
jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 2282
Enregistré le : lun. 30 mars 2009 22:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: [R] Renommer automatiquement un fichier

#8

Message par jchd »

Un indice : les macros @SEC ... sont collectées à la suite, pas en une seule opération ininterruptible.
Donc si on est à la seconde 59 et 999ms, on peut capter @SEC = 59 puis au moment où l'interpréteur parvient à @MIN, récupérer la minute suivante.

Dominos culbuteurs sur minute, heure, jour, mois, année.

La contre-attaque est là.
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Avatar du membre
DimVar
Niveau 10
Niveau 10
Messages : 870
Enregistré le : ven. 30 mai 2008 15:08
Status : Hors ligne

Re: [R] Renommer automatiquement un fichier

#9

Message par DimVar »

OK, merci pour l'info. (risque minime tout de même)
N'évoquons pas la pierre, les jeunes risqueraient d'en poire !
Avatar du membre
jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 2282
Enregistré le : lun. 30 mars 2009 22:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: [R] Renommer automatiquement un fichier

#10

Message par jchd »

... sur lequel je ne parierais pas ma vie.
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11791
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [R] Renommer automatiquement un fichier

#11

Message par Tlem »

Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 2282
Enregistré le : lun. 30 mars 2009 22:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: [R] Renommer automatiquement un fichier

#12

Message par jchd »

Si tu étais mieux rasé ou plutôt une gentille modette, je te ferais un gros poutou pour ça.
En attendant, je te félicite chaleureusement :)
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Répondre