Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell
Shell Vos questions sur l'utilisation des commandes shell
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/01/2008, 18h59   #1
Membre confirmé
 
Avatar de voran
 
Inscription : janvier 2005
Messages : 231
Détails du profil
Informations personnelles :
Localisation : France, Maine et Loire (Pays de la Loire)

Informations forums :
Inscription : janvier 2005
Messages : 231
Points : 239
Points : 239
Par défaut alias et function (bash)

hello,

dans un script, je créé un alias echo -e, mai hélas ce ndernier n'est pas pris en compte quand je fais appel à une fonction.
C'est à dire que les \c, \r sont affichés quand même

exemple de script :

shopt -s expand_aliases # Active l'expansion d'alias.
function fonction()
{
echo "debfct \c"
echo "finfct \r"
}
alias echo='echo -e'
echo "debut \c"
echo "fin\r"
fonction

résultat :
debut fin
debfct \c
finfct \r

au lieu de :
debut fin
devfct finfct
voran est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/01/2008, 19h04   #2
Membre Expert
 
Avatar de Anthony.Desvernois
 
Homme Anthony Desvernois
Ingénieur sécurité & risque
Inscription : juin 2007
Messages : 1 501
Détails du profil
Informations personnelles :
Nom : Homme Anthony Desvernois
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Ingénieur sécurité & risque
Secteur : Finance

Informations forums :
Inscription : juin 2007
Messages : 1 501
Points : 2 011
Points : 2 011
Il faut placer ton alias avant ton appel de fonction...sinon il n'est pas pris en compte pour la fonction.

Lorsque ton script est interpréter par Bash, lorsqu'il va enregistrer ta fonction il va étendre les alias à ce moment là. Du coup, quand tu l'appel (ta fonction), les alias sont déjà étendues (il ne les re-étend pas).
__________________
"Voyager, c'est découvrir que tout le monde a tort", Aldous Huxley
"Less is more" Ludwig Mies Van Der Rohe

Risk & Security Mgmt
Anthony.Desvernois est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/01/2008, 09h59   #3
Membre confirmé
 
Avatar de voran
 
Inscription : janvier 2005
Messages : 231
Détails du profil
Informations personnelles :
Localisation : France, Maine et Loire (Pays de la Loire)

Informations forums :
Inscription : janvier 2005
Messages : 231
Points : 239
Points : 239
merci

c'est exactement ça
voran est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h56.


 
 
 
 
Partenaires

Hébergement Web