Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
832 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  commande DOS

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

commande DOS

n°1074533
kenny22
Posté le 07-05-2005 à 09:41:13  profilanswer
 

Bonjour,
 
Après diverses recherches sur différents forums, je n'ai pas trouvé de réponse à ma question.
 
Est-il possible de récupérer sous DOS la date de modification (et seulement la date !!) d'un fichier, et si oui comment?  
 
Merci de vos réponses.

mood
Publicité
Posté le 07-05-2005 à 09:41:13  profilanswer
 

n°1075125
wackevat
Posté le 07-05-2005 à 21:15:56  profilanswer
 

Je pense que tu dois "parser" la sortie de la commande dir.

n°1075305
dilbert
Posté le 08-05-2005 à 01:34:25  profilanswer
 

J'ai trouvé un bout de code ici et j'ai un peu adapté.
A enregistrer dans un fichier nom_fichier.cmd

Code :
  1. @ECHO ON 
  2. del out.txt 
  3. Set FILE="fichier.txt"
  4. Set PARSEARG="eol= tokens=1,2,3 delims=/ skip=4"
  5. For /f %PARSEARG% %%a in ('dir %FILE%') Do (
  6.         SET JOUR=%%a
  7.         SET MOIS=%%b
  8.         SET ANNEE_HEURE_TAILLE_NOM=%%c
  9.         SET ANNEE_HEURE=%ANNEE_HEURE_TAILLE_NOM:~0,11%
  10.         echo %JOUR%/%MOIS%/%ANNEE_HEURE%>>out.txt
  11. )


Si l'heure est inutile remplace

Code :
  1. SET ANNEE_HEURE=%ANNEE_HEURE_TAILLE_NOM:~0,11%


par

Code :
  1. SET ANNEE_HEURE=%ANNEE_HEURE_TAILLE_NOM:~0,4%

n°1075708
kenny22
Posté le 08-05-2005 à 20:51:43  profilanswer
 

Je te remercie de ta réponse. Ca m'éclaire sur ce que je dois faire, mais j'ai testé ce que tu m'as donné et ça ne fonctionne pas. Le fichier out.txt est bien généré mais c'est // qui est enregixtré dedans.

n°1075725
dilbert
Posté le 08-05-2005 à 21:18:42  profilanswer
 

Effectivement au premier lancement ca écrit //, mais ça a l'air de marcher à partir du 3ème lancement du programmme.

n°1076006
kenny22
Posté le 09-05-2005 à 10:45:17  profilanswer
 

J'ai trouvé !!!
Pour que cela fonctionne à chaque fois, il faut mettre la ) de fin à la fin de la ligne 11.  
 
En tout cas, merci dilbert pour ton aide.

n°1152710
Sm@No
Posté le 18-07-2005 à 16:31:51  profilanswer
 

@echo off
MD c:\temp
echo Programme pour trouver la date de derniere Modification d'un fichier:
echo.
set /p NOM=Entrer le nom du fichier:  
echo Entrer le chemin par Exemple "C:\Temp"
set /p FICHIER=Entrer son emplacement:  
dir /TW %FICHIER% | find "%NOM%" /i > C:\TEMP\temp10.txt
for /F "tokens=1 delims= " %%i in (C:\TEMP\temp10.txt) do set VERI1=%%i
echo Recherche effectuer le %DATE% pour le fichier %NOM%:>>C:\TEMP\reponse.txt
echo Fichier modifier Le %VERI1%>>C:\TEMP\reponse.txt
start C:\TEMP\reponse.txt
:FIN
 
Tien c'est cado!!!

n°1453566
lapin21
Posté le 06-10-2006 à 17:30:24  profilanswer
 

Pour ceux qui veulent faire de l'archivage, rar.exe a une option de filtre sur la date d'un fichier (option tb en ligne de commande).


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  commande DOS

 

Sujets relatifs
commande Dos incrémentiel[DOS]Commande sous dos pour redemarrer
Commande DOS : uploader un fichierrécupérer valeur renvoyée par commande Dos
[commande DOS] invite de commandes multiple[Dos] passer la demande de confirmation de la commande del
[DOS] commande CHOICE???[DOS] ligne de commande
Commande DOS pour changer mon mot de pass MYSQL 
Plus de sujets relatifs à : commande DOS


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR