Triages de fichiers
Posté : 06 nov. 2008 16:13
Code : Tout sélectionner
@echo off & color 3F
mode con cols=87 lines=60
::for /f "tokens=3 delims= " %%i in ('reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v ProductName ^|find "ProductName"') do if /i not "%%i"=="Microsoft Windows XP" echo.&echo.&echo.& echo Vous n'êtes pas sous Windows XP, ce script est écrit pour windows XP & echo.&echo.&echo.& pause & exit
:debut
cls
echo.
echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo º BatToolsBox - º
echo º º
echo º Triez vos fichiers º
echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
reg query "HKEY_CLASSES_ROOT\Directory\shell\Tri_Fch">nul 2> nul
if %errorlevel%==0 goto sautInstall
echo.&echo.&echo.& set /p vrChoiInstall= Voulez vous installer ce scripr au menu contextuel clique droit de windows ? ^(o = oui et entrer = non^):
if /i %vrChoiInstall%==o (
copy %0 "%windir%\lnntck_tri_fch.bat">nul
reg Add "HKEY_CLASSES_ROOT\Directory\shell\Tri_Fch" /ve /t reg_SZ /d "Tri_Fch" /f>nul
reg Add "HKEY_CLASSES_ROOT\Directory\shell\Tri_Fch\command" /ve /t reg_SZ /d "%windir%\lnntck_tri_fch.bat ""%%1""" /f>nul
echo.&echo.&echo.& echo Le script est maintenant installe au menu clic droit de windows, quand vous ferez un clic droit sur un dossier vous aurez une fonction "Tri_Fch" ) else ( echo.>nul)
:sautInstall
if not !%1==! if !%~x1==! set vrSelectRep=%~1
if !%1==! echo.&echo.&echo.& echo Vous pouvez glisser le répertoire qui contien les fichiers à trié sur le batch & echo.&echo.& goto selecRep
if not !%~x1==! echo.&echo.&echo.& echo Vous avez sélectionner un fichier & echo.&echo.& goto selecRep
goto sautSelecRep
:selecRep
set /p vrSelectRep= Entrez ici le chemin du dossier contenant les fichiers à trié :
:sautSelecRep
echo.&echo.&echo.
echo 1 - Triez vos photos par dates
echo 2 - Triez vos fichiers par types ^(par extensions^)
echo 3 - Triez vos fichiers par ordre alphabétique
echo.&echo.& set /p vrChoiUser= Faite votre choix:
if /i %vrChoiUser%==1 goto triPhotoDate
if /i %vrChoiUser%==2 goto triFchTypes
if /i %vrChoiUser%==3 goto triFchAlphabtq
goto debut
:triPhotoDate
if not exist "%userprofile%\Bureau\Tri_fch_date" mkdir "%userprofile%\Bureau\Tri_fch_date"
for /r "%vrSelectRep%\" %%i in (*.jpg) do set VrNamFch=%%i& set VrDatFch=%%~ti& call :movFch
goto fin
:movFch
set VrDatFch=%VrDatFch:~0,10%
set VrDatFch=%VrDatFch:/=-%
if not exist "%userprofile%\Bureau\Tri_fch_date\%VrDatFch%" mkdir "%userprofile%\Bureau\Tri_fch_date\%VrDatFch%"
copy "%VrNamFch%" "%userprofile%\Bureau\Tri_fch_date\%VrDatFch%"
goto :eof
:fin
pause>nul & goto debut
:triFchTypes
for /r "%vrSelectRep%\" %%i in (*.*) do set VrChmFch=%%i& set VrExtnsFch=%%~xi& call :triExts
goto finTriExts
:triExts
if not exist "%userprofile%\Bureau\TriExtension\%VrExtnsFch%" mkdir "%userprofile%\Bureau\TriExtension\%VrExtnsFch%"
copy "%VrChmFch%" "%userprofile%\Bureau\TriExtension\%VrExtnsFch%"
goto :eof
:finTriExts
pause>nul & goto debut
:triFchAlphabtq
for /r "%vrSelectRep%\" %%i in (*.*) do set VrChmFch=%%i& set VrNamFch=%%~nxi& call :triAlpha
goto finTriAlpha
:triAlpha
if not exist "%userprofile%\Bureau\TriAlpha\%VrNamFch:~0,1%" mkdir "%userprofile%\Bureau\TriAlpha\%VrNamFch:~0,1%"
copy "%VrChmFch%" "%userprofile%\Bureau\TriAlpha\%VrNamFch:~0,1%"
goto :eof
:finTriAlpha
pause>nul & goto debut