Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Calcul du nombre de fichier compris entre deux dates

2 réponses
Avatar
jeanluc_69
Bonjour,
Je vous sollicite pour savoir si avez un moyen de récupérer le nombre de
fichier crées dans un répertoire donné en précisant comme arguments les dates
de début et de fin de création.
merci

2 réponses

Avatar
Gilles LAURENT [MVP]
"jeanluc_69" a écrit dans le
message de
news:
| Bonjour,

Bonjour,

| Je vous sollicite pour savoir si avez un moyen de récupérer le nombre
| de fichier crées dans un répertoire donné en précisant comme
| arguments les dates de début et de fin de création.
| merci

Ci-dessous le script VBScript getFiles.vbs permettant de répondre à
votre besoin. Le script supporte trois arguments : Le dossier dans
lequel rechercher les fichiers, les dates de début et de fin de
création.

Usage :
getFiles.vbs <folder> <startDate> <endDate>

Exemple :
CScript //nologo getFiles.vbs D:test 01/06/2008 30/06/2008

--- Coupez ici : getFiles.vbs ---
Set oFs=CreateObject("Scripting.FileSystemObject")
Set oFolder=oFs.GetFolder(WScript.Arguments(0))
Set colFiles=oFolder.Files
nFileCount=0
For Each oFile In colFiles
If _
DateDiff("D", oFile.DateCreated, WScript.Arguments(1)) <= 0 And _
DateDiff("D", oFile.DateCreated, WScript.Arguments(2)) >= 0 Then
WScript.Echo oFile.DateCreated, oFile.Name
nFileCount = nFileCount+1
End If
Next
WScript.Echo VBCrLf & "Number of files : " & nFileCount
--- Coupez ici : getFiles.vbs ---

--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr
Avatar
MCI (ex do ré Mi chel la si do) [MVP]
Bonsoir !

Ci-dessous, une solution avec un petit batch.

@-salutations
--
Michel Claveau



::DIR ou Nb fichiers entre deux dates
:: noter la définition "inversée" des dates limites
@echo off
setlocal

set REP=C:*.*

::date de début
set DD 080525

::date de fin
set DF 080611

set NB=0
for /F "usebackq delims=" %%a in (`dir %REP% /A-D /N /4 /O:D ^| find
":" ^| find "."`) do call :SUB %%a
echo Nb de fichiers : %NB%
endlocal
goto :EOF

:SUB
set LIG=%*
set J=%LIG:~0,2%
set M=%LIG:~3,2%
set A=%LIG:~6,4%
set D=%A%%M%%J%
if /I %D% LSS %DD% GOTO :EOF
if /I %D% GTR %DF% GOTO :EOF
::echo %LIG%
set /A NB+=1

goto :EOF