Fichier

Fichier - Shell/Batch - Programmation

Marsh Posté le 27-09-2007 à 14:51:57    

Hallo,
 
J'ai besoin d'aide.
 
J'ai ecris un petit Programm qui dou afficher les 20 derniers fichier du Fichier C:\WINDOWS par ordre.
 
Ma code:
 

Code :
  1. @ECHO OFF
  2. for /f "delims=" %%a in ('dir /a:-d /o:-d %Windir%\') do echo %Windir%\%%a>>F.txt
  3. for /f "delims=" %%B in (F.txt) do echo %%~nxtzaB>>PP.txt
  4. findstr /n "\." PP.txt>P.txt
  5. for /l %%a in (1,1,20) do findstr /b "%%a:" P.txt>>PPF1.txt
  6. echo.
  7. for /f "tokens=2,3,4,5,6,7 delims=: " %%c in (PPF1.txt) do echo %%h %%c %%g %%d %%e:%%f >>test.txt
  8. del P.txt PP.txt F.txt PPF1.txt
  9. start notepad test.txt
  10. cls


Le Reultat:
 

Citation :

27.09.2007 wiaservc.log 10 31:50  
27.09.2007 bootstat.dat 10 31:2.048  
25.09.2007 SchedLgU.Txt 17 28:9.308  
17.09.2007 AUTOLNCH.REG 09 52:1.080  
17.09.2007 win.ini 09 29:572  
10.09.2007 Sti_Trace.log 10 42:0  
07.09.2007 Prod_Key.txt 12 08:28  
03.09.2007 ODBCINST.INI 15 02:4.161  
21.08.2007 WMSysPr9.prx 11 16:316.640  
15.08.2007 verb1.txt 16 04:8.494  
13.08.2007 nsreg.dat 16 11:0


La sortie la ne me plai pas,j'amerais que le Resultat soit comme ca
 

Citation :

27.09.2007
C:\WINDOWS\wiaservc.log    
C:\WINDOWS\bootstat.dat  
25.09.2007  
C:\WINDOWS\SchedLgU.Txt  
17.09.2007  
C:\WINDOWS\AUTOLNCH.REG  
C:\WINDOWS\win.ini    
10.09.2007  
C:\WINDOWS\Sti_Trace.log
07.09.2007  
C:\WINDOWS\Prod_Key.txt
03.09.2007  
C:\WINDOWS\ODBCINST.INI  
21.08.2007  
C:\WINDOWS\WMSysPr9.prx  
15.08.2007  
C:\WINDOWS\verb1.txt  
 13.08.2007  
C:\WINDOWS\nsreg.dat


Quelqu'un a L'idee,q'esque je dois faire,pour avoir le Reultat comme ca?
 
Merci

Reply

Marsh Posté le 27-09-2007 à 14:51:57   

Reply

Marsh Posté le 27-09-2007 à 19:01:27    

Falianelka a écrit :

La sortie la ne me plai pas,j'amerais que le Resultat soit comme ca
 

Citation :

27.09.2007
C:\WINDOWS\wiaservc.log    
C:\WINDOWS\bootstat.dat  
25.09.2007  
C:\WINDOWS\SchedLgU.Txt  
17.09.2007  
C:\WINDOWS\AUTOLNCH.REG  
C:\WINDOWS\win.ini    
10.09.2007  
C:\WINDOWS\Sti_Trace.log
07.09.2007  
C:\WINDOWS\Prod_Key.txt
03.09.2007  
C:\WINDOWS\ODBCINST.INI  
21.08.2007  
C:\WINDOWS\WMSysPr9.prx  
15.08.2007  
C:\WINDOWS\verb1.txt  
 13.08.2007  
C:\WINDOWS\nsreg.dat


Quelqu'un a L'idee,q'esque je dois faire,pour avoir le Reultat comme ca?


 
Faut écrire ton algo qui mémorise la date de la ligne courante et qui la compare à la date de la ligne suivante
Exemple d'un algo de ce type:

memDate=""
tant que ligne lue
faire
    extraire date
    extraire reste
    si date != memDate
    alors
         memDate=date
         afficher date
    fin si
    afficher reste
fin faire


 
Déroule cet algo à la main, tu verras qu'il marche et qu'il produit le résultat comme tu le veux. Mais désolé, je ne sais pas programmer en batch donc je peux pas le coder...
 
 
 
 


---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed