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

Administration système Discussion :

[BASH] problème alias, histoire de fork ?


Sujet :

Administration système

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 44
    Points : 36
    Points
    36
    Par défaut [BASH] problème alias, histoire de fork ?
    Bonjour à tous,

    j'essaye de faire une abreviation d'un fonction dans un script pour faire les logs :

    test.sh
    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
     
    #!/bin/bash
    alias log='fct_log $FUNCNAME '
     
    fct_log()
    {
       echo "LOG : $1 $2"
    }
     
    titi()
    {
       echo ici
       alias log
       log "petite log"
    }
    Si je fais ./test.sh
    j'ai ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ici
    alias log='fct_log $FUNCNAME'
    line 12 : log : command not found
    Pourtant l'alias est bien défini mais il cherche la command log au lieu de l'alias

    Par contre, si je fais un :
    Cela fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ici
    alias log='fct_log $FUNCNAME'
    LOG : titi petite log
    Est ce que quelqun a une idée de la différence de comportement ?
    pourquoi il cherche la commande au lieu de l'alias ?
    pourquoi avec un source cela fonctionne ?

    cdt,
    dosy07

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 44
    Points : 36
    Points
    36
    Par défaut
    Je pense avoir trouvé ma réponse dans ma bible (http://abs.traduc.org/abs-4.0-fr/abs-4.0.pdf)
    D'ailleurs, je vous conseille fortement de lire ce PDF, je pensais être pas mauvais en script bash mais c'est rien à côté de ce doc.

    (chapitre 24)
    shopt -s expand_aliases

    avant le alias, et effectivement, cela fonctionne

    cdt,
    dosy07

  3. #3
    Membre éclairé
    Avatar de D[r]eadLock
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    504
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 504
    Points : 750
    Points
    750
    Par défaut
    Merci de ta mise à jour. J´ajoute un lien sur le doc original (ou du moins en anglais): http://tldp.org/LDP/abs/html/
    J´ai maintes fois chercher des docs sur les shells, celui-la m´a l´air très interessant).

Discussions similaires

  1. [débutant] [BASH] problème script backup
    Par julien.63 dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 13/04/2008, 18h56
  2. Réponses: 4
    Dernier message: 04/03/2008, 14h21
  3. [BASH]Problème création d' un script
    Par crasho007 dans le forum Linux
    Réponses: 2
    Dernier message: 05/11/2007, 15h34
  4. [BASH] Problème dans une boucle IF
    Par coincoin22 dans le forum Linux
    Réponses: 3
    Dernier message: 16/08/2007, 09h34
  5. problème chat avec socket/fork/pipe
    Par cedricdd dans le forum Réseau
    Réponses: 10
    Dernier message: 08/03/2007, 14h56

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