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 :

Besoin d'aide script perl MERCI


Sujet :

Langage Perl

  1. #1
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2008
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2008
    Messages : 8
    Points : 7
    Points
    7
    Par défaut Besoin d'aide script perl MERCI
    install_env_fj.pl

    cs2tgz2.pl

    tgz2.pl
    bonjour je suis nouveau dans la programmation et je dois faire du perl j'aurais aimer avoir de l'aide concernant des script perl car je n'y comprend rien serais t'il possible que quelqu'un m'aide à faire un exercices avec explication SVP MERCI
    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
    27
    28
    29
    30
    En vous servant des scripts 
    cs2tgz2 
    et
    install_env_fj
    et en vous inspirant du script 
    cgz
     
    écrivez un script qui récupère les fichiers mentionnés dans cs2tgz2
    dans leur version présente sur l'ordinateur où le script s'exécute
    et en fait une archive compressée semblable à 
    env_fj.30.tgz
     
    le nombre devant '.tgz' doit être celui de la version de cs que vous récupérez,
    et que vous pouvez obtenir par 'csver'
     
    Pour faire cela, il faut créer une structure telle que celle produite par la décompression
    de env_fj.30.tgz
    et la compresser ensuite comme le fait cgz
     
     
     
     
    cs2tgz2 = point de départ, donnant la liste des fichiers qui doivent se retrouver dans le tgz pour l'utilisation 'chez soi' des fonctions de 'cs'
     
    install_env_fj = script contenu dans le tgz et à utiliser pour l'installer 'chez soi' 
     
    cgz = script faisant partie de la configuration 'cs' et automatisant un type de compression
     
    env_fj.30.tgz = compression permettant d'installer un environnement de type 'cs', sans accès réseau
    (version pas identique à celle que votre script doit réaliser)
    Voici les 2 script :
    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    #!/usr/bin/perl
     
     
    $files = <<FILES;
    raf_liste etc
    raf bin x
    alias_liste etc
    adaf bin x
    cgz bin
    mt bin
    nv bin
    install_env_fj bin
    csver bin
    csv.pl bin r
    cs bin
    FILES
    # $files contient maintenant tous les paramètres de ma configuration standard
    # et je peux la modifier très simplement
    # le format que j'ai choisi sera explicité dans le 'foreach' qui suit
    # (et qui utilise ces paramètres) :
    # fichier répertoire exécution
    # le 3° paramètre (exécution) étant optionnel
    # pour chaque ligne on définit donc :
    # le nom du fichier qu'il faut télécharger du serveur
    # dans quel sous-répertoire (de /usr/local/) il faut le mettre
    # et s'il faut l'exécuter :
    #	x : immédiatement
    #	r : à chaque démarrage
     
    # pour utiliser les paramètres contenus dans $files,
    # je préfère les transférer dans une variable de type vecteur, 
    # pour pouvoir utiliser 'foreach'
    # cela se fait simplement par un 'split' avec une 'fin de ligne' (\n) comme séparateur
    # (pour éviter une composante vide, 
    # correspondant à ce qu'il y a derrière le dernier \n,
    # je fais d'abord un 'chomp'
     
    chomp $files;
     
    @files = split(/\n/,$files);
    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
    #!/usr/bin/perl
     
    $param = shift; 
     
     
    $id=`whoami`;
    chomp $id;
    if ($id ne "root") {
    	print "Il faut être 'root' pour pouvoir installer la configuration standard\n";
    	exit;
    }
     
    system("cp bin/* /usr/local/bin/");
    system("cp etc/* /usr/local/etc/");
    system("/usr/local/bin/raf");
    system("/usr/local/bin/adaf");
     
    system("chmod +s /sbin/fdisk");
    et le fichier cgz
    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
    #!/usr/bin/perl
     
    $nom = shift; 	# 1° paramètre à la ligne de commande
    chomp $nom;
     
    if ($nom eq "") {
    	print "\n1° paramètre = nom du répertoire à compresser\n";
    	print "2° paramètre (optionnel) = numéro de la version\n\n";
    	exit;
    }
     
    $nom =~ s/\///;
     
    $version = shift; 	# 2° paramètre à la ligne de commande
    chomp $version;
     
    if ($version eq "") {
    	system("tar czvf $nom.tgz $nom");
    } else {
    	system("tar czvf $nom.$version.tgz $nom");
    }

  2. #2
    Invité
    Invité(e)
    Par défaut
    Un conseil : commence par ça...

Discussions similaires

  1. Besoin d'aide script PERL generateur de hits
    Par maiko dans le forum Web
    Réponses: 4
    Dernier message: 10/07/2009, 23h06
  2. Problème de script Perl - merci d'avance de votre aide
    Par fractale69 dans le forum Langage
    Réponses: 20
    Dernier message: 03/11/2008, 04h44
  3. Besoin d'aide script galerie
    Par orphen dans le forum Langage
    Réponses: 2
    Dernier message: 04/05/2007, 22h51
  4. Aide script perl
    Par donmamio dans le forum Langage
    Réponses: 10
    Dernier message: 08/08/2006, 17h34
  5. Réponses: 4
    Dernier message: 08/06/2006, 20h41

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