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 :

ré-ecrire un code shell en perl (bloqué)


Sujet :

Langage Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Modérateur
    Avatar de paissad
    Homme Profil pro
    Ingénieur de développement (Java/JEE/Eclipse RCP,EMF & webMethods)
    Inscrit en
    Avril 2006
    Messages
    1 043
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur de développement (Java/JEE/Eclipse RCP,EMF & webMethods)
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 043
    Par défaut ré-ecrire un code shell en perl (bloqué)
    Bonjour,
    j'ai quelques fonctions bash que j'utilise pour personnaliser l'affichage des sorties etc ... de mes scripts
    voici les 2 funtions shell associées que je veux convertir en perl pour mes scripts perl ....
    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
    frame()
    {
       WIDTH=78
       STARS="*******************************************************************************"
       SPACES="                                                                               "
       printf "%s\n" "${STARS:1:$WIDTH}"
       while read line ; do
          HALF="${SPACES:1:$((($WIDTH-${#line})/2))}"
          LINE="$HALF$line$SPACES"
          printf "*%s*\n" "${LINE:1:$(($WIDTH-2))}"
       done
       printf "%s\n" "${STARS:1:$WIDTH}"
    }
    introduce(){
        echo -e "$txtgrn"
        printf "$1\n" | frame
        echo -e  "$txtrst \c "; sleep 3;
    }
    voici un exemple de sortie de la fonction introdude
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ******************************************************************************
    *       Changing orig.tar.gz tarball ( debian/rules get-orig-source )        *
    ******************************************************************************
    Comme vous le voyez, la fonction introduce centre et mes dans 1 centre et mets dans un cadre le texte donné en paramètre

    Est ce que quelqu'un pourrait m'aider à écrire tout ça en perl ?
    Ce que j'ai lu dans la doc de perl pour la fonction print & printf me semblent peu suffisant :/

    Merci d'avance pour votre aide ...
    Nous n'héritons pas de la terre de nos parents, nous l'empruntons à nos enfants.
    Le chat du site est aussi ici pour aider. Ne pas hésiter à visiter !

  2. #2
    Membre chevronné
    Avatar de Schmorgluck
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    371
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mai 2006
    Messages : 371
    Par défaut
    Je voudrais bien essayer de t'aider, mais je ne m'y connais pas assez en bash pour comprendre cette notation :
    Et je n'arrive pas à trouver de doc à ce sujet.

  3. #3
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Par défaut
    C'est dans le man de bash, "Parameter expansion".
    correspond en perl à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    substr($STARS, 1, $WIDTH)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ecrire un code VHDL à partir de Perl
    Par blaise4714 dans le forum VHDL
    Réponses: 1
    Dernier message: 19/06/2007, 14h32
  2. Ecrire un code VHDL à partir de Perl
    Par blaise4714 dans le forum Langage
    Réponses: 1
    Dernier message: 19/06/2007, 14h32
  3. Comment ecrire du code sur plusieurs lignes?
    Par tooneygirl dans le forum Access
    Réponses: 5
    Dernier message: 15/06/2005, 16h03
  4. [langage] code ascii en Perl
    Par intox18 dans le forum Langage
    Réponses: 3
    Dernier message: 18/01/2005, 09h35
  5. [VB.NET] Comment ecrire du code entre <title>
    Par ykane dans le forum ASP.NET
    Réponses: 5
    Dernier message: 10/05/2004, 16h58

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