Documentation sur le logiciel SYMPA

Ceci est une ancienne révision du document !


list-config_modif_quota.pl

#!/usr/bin/perl -w
#
# list-config_modif_quota.pl
#
# Catherine.Balleydier@inpg.fr
#
# maj : 23/09/16
#
########################################################################
# 
#   modifier les quotas des archives 
#
########################################################################
#
use strict;
use warnings;
use File::Copy;

my $REP="/home/sympa/list_data/listes.grenoble-inp.fr/" ;
my $fichier ;
my @CONFIG ;
my $entree ;
my $nvfichier ;
my $LIGNE ;
my $nvquota = "4000";
#
#  date
#
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);
my $marque = (1900+$year)."_".($mon+1)."_"."$mday"."_"."$hour"."_"."$min" ;

#
#  lister le contenu du repertoire /home/sympa/expl/inpg.fr
#
opendir(DIR, $REP) || die "Impossible de lire $REP : $!\n"; 
my @liste = grep { /^[^\.]/ && -r "$REP/$_" } readdir(DIR);
closedir(DIR);


# traiter pour chaque liste le fichier config
#
foreach $entree (@liste)
{
#  
# ouverture du fichier config
#
  $fichier = "$REP"."$entree"."/config" ; 
  copy ("$fichier", "$fichier"."."."$marque") ;
  open (FICH,"$fichier") ||die "probleme fichier config";
  @CONFIG = <FICH> ;
  close (FICH); 
 
  $nvfichier  = "$REP"."$entree"."/nvconfig" ;
  open (NVFICH,">$nvfichier") ||die "probleme nvfichier";
#
#  chercher les quotas 
#
   foreach $LIGNE (@CONFIG)
   {
      if ( $LIGNE =~ /quota/)
      {
         $LIGNE = " quota "."$nvquota" ;
         print " $LIGNE \n" ;
      }
      chomp $LIGNE ;
      print NVFICH "$LIGNE\n" ;
   }
   close (NVFICH) ;
   rename ("$nvfichier","$fichier") ;
   chown "503" , "503", "$fichier" ;
}