Récupérer le nom du dernier fichier modifié [Résolu/Fermé]

Signaler
Messages postés
690
Date d'inscription
lundi 20 août 2007
Statut
Membre
Dernière intervention
16 avril 2015
-
Messages postés
690
Date d'inscription
lundi 20 août 2007
Statut
Membre
Dernière intervention
16 avril 2015
-
Bonjour,

J'aimerais récupérer le nom du dernier fichier modifié dans un répertoire?
Je suppose que la commande à utiliser est DIR?

Et par la suite, je souhaite récupérer, seulement, une partie du nom du fichier?
La commande utilisée est SUBST?

Le programme sera un fichier batch.

Je vous remercie de votre aide.

8 réponses

Messages postés
37
Date d'inscription
samedi 5 janvier 2013
Statut
Membre
Dernière intervention
27 mars 2016
285
Messages postés
690
Date d'inscription
lundi 20 août 2007
Statut
Membre
Dernière intervention
16 avril 2015
18
Merci pour cette recherche! ;-)
Messages postés
18120
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
12 mai 2020
4 847
hello
dernier fichier modifié:
@echo off
for /f "delims=" %%a in ('dir /b/T:W /o:d') do set nom=%%a
echo %nom%
montre un exemple du texte à modifier
Messages postés
690
Date d'inscription
lundi 20 août 2007
Statut
Membre
Dernière intervention
16 avril 2015
18
Je veux récupérer le nom du dernier fichier modifié. Et par la suite, récupérer une portion du nom.

Pourquoi veux tu voir le texte modifié? Je ne peux pas, ça reste confidentiel.Désolé.
Messages postés
18120
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
12 mai 2020
4 847
et par la suite, récupérer une portion du nom.
choisis: (help for)
   %~I         - étend %I en supprimant les guillemets (")
%~fI - étend %I en nom de chemin d'accès reconnu
%~dI - étend %I en lettre de lecteur uniquement
%~pI - étend %I en chemin d'accès uniquement
%~nI - étend %I en nom de fichier uniquement
%~xI - étend %I en extension de fichier uniquement
%~sI - chemin étendu contenant uniquement des noms courts
%~aI - étend %I en attributs du fichier
%~tI - étend %I en date/heure du fichier
%~zI - étend %I en taille du fichier
%~$PATH:I - parcourt les répertoires de la variable
d'environnement PATH et étend %I en nom du
premier fichier reconnu trouvé. Si le nom de la
variable d'environnement n'est pas défini ou
que le fichier n'est pas trouvé par la recherche,
alors ce modificateur étend en chaîne vide
Messages postés
690
Date d'inscription
lundi 20 août 2007
Statut
Membre
Dernière intervention
16 avril 2015
18
Voilà ce que je veux:

J'ai dans le lecteur D:

FichierdeToto modifié le 20/7/2014 à 14h00
FichierdeTete modifié le 20/7/2014 à 14h01
FichierdeTutu modifié le 20/7/2014 à 14h02
FichierdeTata modifié le 20/7/2014 à 14h03
FichierdeTiti modifié le 20/7/2014 à 14h04

Je cherche à afficher dans l'invite de commande: Titi

Je te remercie de ton aide
Messages postés
18120
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
12 mai 2020
4 847
il faut enlever Fichierde ?
c'est un texte fixe ?
si oui, essayer
@echo off
for /f "delims=" %%a in ('dir /b/T:W /o:d') do set nom=%%a
echo %nom:Fichierde=%
Messages postés
690
Date d'inscription
lundi 20 août 2007
Statut
Membre
Dernière intervention
16 avril 2015
18
Oui il faut enlever Fichierde.
Oui, c'est du texte fixe

Peux tu m'expliquer ta boucle for? Je débute en commande DOS...

Merciiii ;-)
Messages postés
690
Date d'inscription
lundi 20 août 2007
Statut
Membre
Dernière intervention
16 avril 2015
18
J'ai essayé ta commande mais il ne reconnait pas "%%a"????
Messages postés
18120
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
12 mai 2020
4 847
%% dans un fichier bat, %a en interactif
Messages postés
690
Date d'inscription
lundi 20 août 2007
Statut
Membre
Dernière intervention
16 avril 2015
18
C'est bon je récupère bien le dernier fichier modifié. Par contre, je récupère le nom entier du fichier...
Messages postés
18120
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
12 mai 2020
4 847
tu as remplacé Fichierfde par le bon texte ?
C:> set nom=FichierdeTiti
C:> echo %nom:Fichierde=%
Titi
Messages postés
690
Date d'inscription
lundi 20 août 2007
Statut
Membre
Dernière intervention
16 avril 2015
18
C'est good!!!! Merci ;-)

Pour être nickel, je ne veux pas l'extension. J'ai titi.txt.
Messages postés
690
Date d'inscription
lundi 20 août 2007
Statut
Membre
Dernière intervention
16 avril 2015
18
C'est bon j'ai trouvé sans l'extension!

Je te remercie pour ton aide. C'est super sympa!!!!! ;-)
Messages postés
690
Date d'inscription
lundi 20 août 2007
Statut
Membre
Dernière intervention
16 avril 2015
18
J'ai une petite question.
Pourquoi on met "delims=" sachant qu'on a rien donné comme délimitation...