Script de déplacement de fichiers datant de 10 jours
Bonjour,
voici mon problème : j'ai créer un script batch avec la fonction FORFILES pour pouvoir déplacé plusieurs fichier de plus de 10 jours d'une arborescence vers un dossier spécifique.
voici mon script :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
| cls
@echo off
echo.
echo.
echo.
echo ================ Purge des fichiers superieurs a 10 jours ================
echo.
echo.
echo.
echo Tache lancee le %date% a %time%
echo ----------------------------------------
echo.
echo.
echo Liste des repertoires a traiter
echo ===============================
echo.
cd C:\TEST_PACIFIC\pa
if not exist C:\TEST_PACIFIC\tmp\PALOG\ mkdir C:\TEST_PACIFIC\tmp\PALOG\
if not exist C:\TEST_PACIFIC\tmp\OLDFILES mkdir C:\TEST_PACIFIC\tmp\OLDFILES
set PALOG=C:\TEST_PACIFIC\tmp\PALOG\listePA.log
set pathPA=C:\TEST_PACIFIC\pa
set IBLOG=C:\TEST_PACIFIC\tmp\PALOG\inbox.log
set OLDFILES=C:\TEST_PACIFIC\tmp\PALOG\OLDFILES
dir /ad /b /s %pathPA% | find /i "inbox" > %IBLOG%
for /f "usebackq delims==" %%i in (`dir /b %pathPA%`) do echo %%i
echo.
echo Test de presence des dossiers Inbox
echo ===================================
echo.
for /f %%i in (%PALOG%) do if exist %%i\inbox (
echo %%i\inbox existe
) else (
echo %%i\inbox n'existe pas
)
echo.
echo Emplacements d'origine des fichiers de plus de 10 jours
echo =======================================================
echo.
for /f %%i in (%IBLOG%) do (
forfiles -p%%i -m* -d-10 -c"cmd /c echo %%i\@file date de plus de 10 jours : sa date est @fdate"" >>C:\TEST_PACIFIC\tmp\PALOG\oldfiles.log
)
echo.
echo Deplacements des fichiers de plus de 10 jours vers %OLDFILES%
echo =============================================================================
echo.
for /f %%i in (%IBLOG%) do (
forfiles -p%%i -m* -d-10 -c"cmd /c move %%i\@FILE %OLDFILES%"
)
SET /A count=0
FOR /F "usebackq delims==" %%A IN (`DIR /B %OLDFILES%`) DO SET /A count+=1
IF %count% GTR 1 (
ECHO %count% fichers deplaces
) ELSE (
ECHO Aucun fichier deplace - Erreur !!!
)
pause |
Le problème interviens à partir de la partie où je liste les fichiers datant de plus de 10 jours. En effet, je prend l'information depuis un fichier de log généré plus haut dans mon script. Mais je ne comprend pas pourquoi il ne peux pas me listé les fichiers datant de plus de 10 jours !
Si quelqu'un peux m'aidé :) c'est super sympa !:ccool: