IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Perl Discussion :

Ménage dans les répertoires


Sujet :

Langage Perl

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 43
    Points : 47
    Points
    47
    Par défaut Ménage dans les répertoires
    Bonjour,

    J'ai un petit programme pour faire le ménage de mes fichiers > que 15 jours mais j'aimerais savoir comment faire pour faire le ménage dans des répertoires et exclure certain répertoire Ex:

    J'ai un répertoire qui se nomme:

    C:\RAPPORT\DADA et dans DADA j'ai 5 autres répertoires (environ)
    C:\RAPPORT\DADA\UNIX
    C:\RAPPORT\DADA\WINDOWS
    C:\RAPPORT\DADA\P5
    C:\RAPPORT\DADA\ZVM
    C:\RAPPORT\DADA\VMWARE
    Dans C:\RAPPORT\DADA\UNIX j'ai des fichiers html (je veux garder les 15 derniers jours)

    Dans C:\RAPPORT\DADA\WINDOWS j'ai des fichiers html (je veux garder les 15derniers jours)

    etc... sauf que
    Dans C:\RAPPORT\DADA\VMWARE j'ai 3 autres répertoires
    C:\RAPPORT\DADA\VMWARE\RAPPORT1
    C:\RAPPORT\DADA\VMWARE\RAPPORT2
    C:\RAPPORT\DADA\VMWARE\RAPPORT3
    et dans C:\RAPPORT\DADA\VMWARE\RAPPORT1 j'ai des fichiers html (je veux garder les 15 derniers jours)

    Aussi j'aimerais exclure certain répertoire au besoin (mais pas tout le temps)

    Voici un exemple de mon programme mais il ne fait pas tout ce que je viens d'écrire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    $P5CUMULJOUR="d:\\p5cumuljour";
    $delai=240*60*60;
    menage("$P5CUMULJOUR"); 
     
    #------------------------------------------------------------------
    # Calcul de date pour faire du menage
    #------------------------------------------------------------------
    sub menage {
    my ($dir) = shift;
    #
    opendir(DIR, $dir) or die erreur ("Impossible ouvrir $dir: $!  voir sub menage"); 
    while (defined($file = readdir(DIR))) { 
       if ($file ne "." & $file ne "..") {
    #
    # Extraire la date de la derniere modification
    #
           ($modheure) = (stat("$dir\\$file"))[9];
           $diff = time() - $modheure;
           if ($diff > $delai) {
               unlink("$dir\\$file");
                               } 
                                          }
                                           }
     
             close (DIR);
    }

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 43
    Points : 47
    Points
    47
    Par défaut Je pense que la commande find
    Je pense que la commande find pourrait faire exactement ce que j'aimerais. Y a-t-il quelqu'un qui connait bien la commande FIND en perl.


    Merci de m'aider

Discussions similaires

  1. [PHP 5.2] Chargement automatique récursif dans les répertoires
    Par gtraxx dans le forum Langage
    Réponses: 20
    Dernier message: 30/08/2009, 02h05
  2. Questions sur la navigation dans les répertoires
    Par belle5656 dans le forum Langage
    Réponses: 86
    Dernier message: 03/11/2007, 21h44
  3. Réponses: 4
    Dernier message: 20/12/2006, 11h26
  4. naviguer dans les répertoires du serveur
    Par guitz dans le forum Langage
    Réponses: 2
    Dernier message: 02/09/2006, 12h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo