
Envoyé par
EriCstoFF
Zul, en fait les trucs de shell là ca doit pas être pour moi vu que j'ai windows.
En effet, sous Windows, c'est du batch et non pas du shell. Mais ça marche très bien aussi, surtout en collant le batch dans les tâches planifiées.
Cela donne ceci :
1 2 3 4 5 6 7 8 9 10 11 12 13
| @echo off
if "%1"=="" goto :eof
REM OK, le chemin est passé en argument.
setlocal
pushd %1
set count=0
for /f "usebackq tokens=* delims=" %%I in (`dir /a-d /b /-p`) do (
set /A count+=1
)
set file="%date:~6,4%-%date:~3,2%-%date:~0,2%-%time:~0,2%-%time:~3,2%-%time:~6,2%.txt"
echo Folder: "%1">%file%
echo Number of files: %count%>>%file%
popd |
Argument : répertoire à dénombrer.
Sortie : fichier au format "AAAA-MM-JJ-HH-mm-ss.txt" contenant le nom du répertoire et le nombre de fichiers recensés.
Inclusion dans les tâches planifiées, toutes les heures :
schtasks /create /SC HOURLY /TN "CountFiles" /RU SYSTEM /TR "C:\MesBatchs\CountFiles.bat \"C:\MonDossier\ASurveiller\""
Ayé, fini, plus qu'à améliorer en fonction de tes besoins... 
C'est bien sûr possible à faire en C++, mais je pense que ce sera bien pire : rien que l'utilisation de FindFirstFile/FindNextFile est plus complexe que le batch que je t'ai donné...
Partager