-
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
-
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).
-
merci
c'est exactement ça :yaisse2: