Invite de commandes : nom de fichier avec la date [Résolu]

Le coin des administrateurs et des développeurs. Astuces techniques, ...

Invite de commandes : nom de fichier avec la date [Résolu]

Messagepar cyrille » Mar 24 Mai 2016 20:15

Bonjour,

J'ai la commande xcopy suivante dans un fichier batch :
xcopy "C:\Program Files (x86)\Collectorz.com\Movie Collector\*.*" "D:\DOSSIERS\DOSSIERS par DEFAULT ET SAUV\SAUV\COLLECTORZ\DONNES 2015" /Y /M /D>rapport_du_%DATE%.txt"

Comment faire pour que la date s'ajoute à la phrase" rapport du" à la fin de la commande pour sortir un rapport sous le nom Rapport du 24/05/2016 par ex. (date d'aujourd'hui) ?

J'ai essayé en mettant cette commande avant la commande xcopy :
set rapport=Rapport du %date%
J'obtiens bien Rapport du 24/05/2016.

Mais si j'écris rapport.txt ou %rapport%.txt après le caractère de redirection, j'obtiens n'importe quoi.

Si quelqu'un pouvait me donner l'astuce ... Merci d'avance pour le coup de main.

Cyrille
cyrille
 
Messages: 21
Inscription: Ven 3 Mai 2013 11:03

Re: Invite de commandes : nom de fichier avec la date

Messagepar PatriciaG » Mar 24 Mai 2016 23:34

Bonjour,
Je pense que ton problème vient du caractère slash qui figure dans la date.
Il faut que tu enlèves ces barres obliques du nom de fichier, sinon ton batch cherche à créer un dossier.

Pour récupérer JJMMAAAA, cela va donner quelque chose comme :

set d=%date:~0,2%%date:~3,2%%date:~6,4%
xcopy "C:\Program Files (x86)\Collectorz.com\Movie Collector\*.*" "D:\DOSSIERS\DOSSIERS par DEFAULT ET SAUV\SAUV\COLLECTORZ\DONNES 2015" /Y /M /D>rapport_du_%d%.txt"

@+
Dernière édition par PatriciaG le Mer 25 Mai 2016 00:15, édité 1 fois.
Avatar de l’utilisateur
PatriciaG
 
Messages: 3001
Inscription: Jeu 11 Nov 2010 17:11
Localisation: Port-sur-Saône / Haute-Saône / France

Re: Invite de commandes : nom de fichier avec la date

Messagepar Alain Quarré » Mar 24 Mai 2016 23:59

Bien Patricia!
La manipulation de variable en batch est peu connue, à moi de te dire que j'apprécie ce genre de réponse.

Permet moi d'y apporter quelque suppléments.

Pour utiliser la date dans le nom de fichier, j'utiliserais la méthode donnée par Patricia, mais en remettant la date dans l'ordre logique.
J'explique.
Si tu as une date au format JJMMAAAA, le classement des fichier ne sera pas correct. (tu auras tous les fichier du premier du mois, ensuite ceux du deuxième jour du mois, et ainsi de suite)

L'ordre logique doit être AAAAMMJJ
Cela permettra un affichage correct quand tu classera les fichiers selon leur nom.
Reprenons donc ce que Chantal nous donnait comme solution, mais dans le sens AAAAMMJJ
cela nous donne
Code: Tout sélectionner
set d=%date:~6,4%%date:~3,2%%date:~0,2%

Perso, j'y ajoute des tirets, pour une facilité de lecture:
Code: Tout sélectionner
set d=%date:~6,4%-%date:~3,2%-%date:~0,2%


et ensuite, ton rapport:
Code: Tout sélectionner
xcopy "C:\Program Files (x86)\Collectorz.com\Movie Collector\*.*" "D:\DOSSIERS\DOSSIERS par DEFAULT ET SAUV\SAUV\COLLECTORZ\DONNES 2015" /Y /M /D>rapport_du_%d%.txt"


Voilà, tu as de quoi faire.


Au fait, Cyrille, c'est féminin?
Dernière édition par Alain Quarré le Mer 25 Mai 2016 00:26, édité 1 fois.
Déplacer les dossiers utilisateur topic4073.html topic5883.html
Déplacer le dossier Public topic4396.html
PAS DE RÉPONSE TECHNIQUE PAR MP
Alain Quarré
 
Messages: 964
Inscription: Mer 20 Jan 2010 23:41

Re: Invite de commandes : nom de fichier avec la date

Messagepar PatriciaG » Mer 25 Mai 2016 00:11

Bonjour Alain,
Merci pour tes compliments. :)

Je suis une vieille informaticienne, tu sais.
J'ai connu la programmation en langage machine et les cartes perforées, dans ma jeunesse. :mrgreen:

Mais je me suis éloignée de ce genre de programmation.

Tu évoques la méthode donnée par Chantal, mais les indications que j'ai fournies à Cyrille ne proviennent pas de Chantal, sinon, je l'aurais citée, par courtoisie.
Ce sont simplement des choses que j'ai apprises dans mes études informatiques.

Pour en revenir au sujet qui nous intéresse, bien entendu, l'ordre logique dot être AAAAMMJJ pour faciliter l'exploitation des fichiers.

Je n'ai pas précisé ce point, car je me suis contentée de répondre à la demande spécifique de Cyrille.
Je me suis placée dans le cadre de fichiers ponctuels et non destinés à un archivage.

Mais tu as raison d'en profiter pour apporter ces éléments complémentaires fort utiles et je t'en remercie. ;)

@+
Avatar de l’utilisateur
PatriciaG
 
Messages: 3001
Inscription: Jeu 11 Nov 2010 17:11
Localisation: Port-sur-Saône / Haute-Saône / France

Re: Invite de commandes : nom de fichier avec la date

Messagepar Alain Quarré » Mer 25 Mai 2016 00:25

PatriciaG a écrit:Tu évoques la méthode donnée par Chantal
Faute de frappe, c'est Patricia qu'il faut lire. (suis pas tout jeune non plus)
Déplacer les dossiers utilisateur topic4073.html topic5883.html
Déplacer le dossier Public topic4396.html
PAS DE RÉPONSE TECHNIQUE PAR MP
Alain Quarré
 
Messages: 964
Inscription: Mer 20 Jan 2010 23:41

Re: Invite de commandes : nom de fichier avec la date

Messagepar PatriciaG » Mer 25 Mai 2016 00:30

Alain Quarré a écrit:
PatriciaG a écrit:Tu évoques la méthode donnée par Chantal
Faute de frappe, c'est Patricia qu'il faut lire. (suis pas tout jeune non plus)


Tu es tout excusé, Alain, et tes explications sont précieuses. :)

@+
Avatar de l’utilisateur
PatriciaG
 
Messages: 3001
Inscription: Jeu 11 Nov 2010 17:11
Localisation: Port-sur-Saône / Haute-Saône / France

Re: Invite de commandes : nom de fichier avec la date

Messagepar cyrille » Mer 25 Mai 2016 08:09

Pour Alain quarré : Cyrille, c'est du masculin à une époque ou il n'existait qu'au masculin.
Hé oui, il parait qu'on est senior maintenant ! :lol:
Je n'étais pas informaticien à l'époque du DOS, mais je "bidouillait" la programmation par plaisir et j'ai découvert le DOS sous Amstrad CPC6128. D'ailleurs le DOS portait un nom légèrement différent (CP/M) à cette époque si ma mémoire est bonne. Je ne suis même pa sûr qu'à cette époque on pouvait faire du batch dessus.

Bref, j'ai suivi vos conseils Patricia et Alain. Tout fonctionne à merveille. Le nom du rapport sort bien sous la forme Rapport du 25-05-2016. :super:
je ne crois pas que j'y serais arrivé sans vous. J'ai portant vu pas mal de sîtes mais il manquait toujours le slash.

Question : Alain, tu parles d'inverser le contenu de la date :
jj-mm-aa par aa-mm-jj

pour pouvoir faire du tri par exemple.

Mais je ne comprend pas car si je fais un dir dans l'invite de commande, les dates des fichiers s'affichent sous la forme jj-mm-aa, idem sous l'explorer Windows. Tu peux m'expliquer ?
cyrille
 
Messages: 21
Inscription: Ven 3 Mai 2013 11:03

Re: Invite de commandes : nom de fichier avec la date

Messagepar PatriciaG » Mer 25 Mai 2016 08:22

Bonjour,
Tant mieux si nous avons pu résoudre ton problème, Alain et moi.

Bien que ta question s'adresse à Alain, je me permets de te répondre, d'autant que j'ai participé au fil de discussion, dans lequel j'ai même fourni la première réponse. ;)

Effectivement, l'inversion du contenu de la date permet de trier les fichiers par ordre chronologique, AAAAMMJJ.

L'affichage des dates est effectué sous la forme usuelle de lecture, pour le confort de l'utilisateur, mais cela n'empêche pas que les dates sont gérées logiquement, dans tout le système Windows, commandes DOS et explorateur de fichiers inclus.
Ainsi, par exemple, 21-12-2015 < 01-01-2016, selon l'ordre (chrono)logique.

@+
Avatar de l’utilisateur
PatriciaG
 
Messages: 3001
Inscription: Jeu 11 Nov 2010 17:11
Localisation: Port-sur-Saône / Haute-Saône / France

Re: Invite de commandes : nom de fichier avec la date [Réslu]

Messagepar cyrille » Jeu 26 Mai 2016 14:36

J'ai compris.

J'ai confondu la date de création ou de modification d'un fichier
avec l'affichage des noms de fichiers avec dates inclus.

Merci

PS : j'ai un autre post intitulé Planification ... Configurer pour si vous voulez
cyrille
 
Messages: 21
Inscription: Ven 3 Mai 2013 11:03

Re: Invite de commandes : nom de fichier avec la date [Résolu]

Messagepar PatriciaG » Jeu 26 Mai 2016 23:25

Bonsoir,
De rien. ;)

Tout est donc clair pour toi sur ce point.

J'ai vu que tu as posté deux autres sujets et Alain Quarré t'a répondu.

Je te remercie d'avoir pensé à clôturer ce topic.
N'oublie pas de faire la même chose pour les autres, comme celui-ci topic17338.html

@+
Avatar de l’utilisateur
PatriciaG
 
Messages: 3001
Inscription: Jeu 11 Nov 2010 17:11
Localisation: Port-sur-Saône / Haute-Saône / France


Retourner vers Administration / programmation

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités

Livre photo