Batch Index du Forum
S’enregistrerRechercherFAQMembresGroupesConnexion
Répondre au sujet Page 1 sur 1
Copier les derniers fichiers de sous dossiers
Auteur Message
Répondre en citant
Message Copier les derniers fichiers de sous dossiers 
Bonsoir,

Je cherche à copier les x derniers fichiers d'une liste de sous dossiers.
Les sous dossiers ne contiennent que rarement le même nombre de fichiers ou le même type de fichiers.
Les noms de fichiers peuvent contenir des espaces.


Voici la structure
Code:

Folder
    Subfolder_01
        Subfolder_01_File_0001.xxx
        Subfolder_01_File_0002.xxx
        ...
        Subfolder_01_File_0125.xxx
        Subfolder_01_File_0126.xxx

    Subfolder_02
        Subfolder_02_File_0001.xxx
        Subfolder_02_File_0002.xxx
        ...
        Subfolder_02_File_0356.xxx
        Subfolder_02_File_0357.xxx

    Subfolder_03
        Subfolder_03_File_0001.xxx
        Subfolder_03_File_0002.xxx
        ...
        Subfolder_03_File_0018.xxx
        Subfolder_03_File_0019.xxx

Et voici le résultat souhaité

Code:
New_Folder
        Subfolder_01_File_0125.xxx
        Subfolder_01_File_0126.xxx

        Subfolder_02_File_0356.xxx
        Subfolder_02_File_0357.xxx

        Subfolder_03_File_0018.xxx
        Subfolder_03_File_0019.xxx


La programmation Dos n'est pas mon truc PHP/JS/HTML oui mais MS Dos .... Embarassed

J'ai donc essayé de développer un truc ..
Code:
@echo off

SET "MasterFolder=%~1"
   cd %MasterFolder%
   
FOR /F "delims=" %%i IN ('dir /ad-h /b /t:c /od') DO (
   rem echo %%i
   cd %%i
   call :innerloop
   cd..
)

:innerloop
setlocal
set /a "n=0, limit=5"
   FOR /F "delims=" %%z IN ('dir /s /b /o-n') DO (
      echo %%z
      2>nul set /a "n+=1, 1/(limit-n)"||goto :break
   )
:break


Je lance cela comme ça :
Code:
g:\>last_files.bat g:\MyMasterFolder


Autant dire que cela ne fonctionne pas tout à fait comme je le voudrais Laughing
Cela liste bien les 5 derniers fichiers de chaque sous dossier mais les cinq dernières lignes sont étrange.

Citation:

g:\MyMasterFolder\SubFolder_01\SubFolder_01_0062.xxx
g:\MyMasterFolder\SubFolder_01\SubFolder_01_0061.xxx
g:\MyMasterFolder\SubFolder_01\SubFolder_01_0060.xxx
g:\MyMasterFolder\SubFolder_01\SubFolder_01_0059.xxx
g:\MyMasterFolder\SubFolder_01\SubFolder_01_0058.xxx
g:\MyMasterFolder\SubFolder_02\SubFolder_02_0062.xxx
g:\MyMasterFolder\SubFolder_02\SubFolder_02_0061.xxx
g:\MyMasterFolder\SubFolder_02\SubFolder_02_0060.xxx
g:\MyMasterFolder\SubFolder_02\SubFolder_02_0059.xxx
g:\MyMasterFolder\SubFolder_02\SubFolder_02_0058.xxx
g:\MyMasterFolder\SubFolder_03\SubFolder_03_0052.xxx
g:\MyMasterFolder\SubFolder_03\SubFolder_03_0051.xxx
g:\MyMasterFolder\SubFolder_03\SubFolder_03_0050.xxx
g:\MyMasterFolder\SubFolder_03\SubFolder_03_0049.xxx
g:\MyMasterFolder\SubFolder_03\SubFolder_03_0048.xxx
g:\MyMasterFolder\SubFolder_04\SubFolder_04_0064.xxx
g:\MyMasterFolder\SubFolder_04\SubFolder_04_0063.xxx
g:\MyMasterFolder\SubFolder_04\SubFolder_04_0062.xxx
g:\MyMasterFolder\SubFolder_04\SubFolder_04_0061.xxx
g:\MyMasterFolder\SubFolder_04\SubFolder_04_0060.xxx
g:\MyMasterFolder\SubFolder_04
g:\MyMasterFolder\SubFolder_03
g:\MyMasterFolder\SubFolder_02
g:\MyMasterFolder\SubFolder_01
g:\MyMasterFolder\SubFolder_01\SubFolder_01_0062.xxx





______________________________________________________
A bientôt
Message Publicité 
PublicitéSupprimer les publicités ?


Montrer les messages depuis:
Répondre au sujet Page 1 sur 1
  



Index | créer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Copyright 2008 - 2016 // Batch