Bonjour à tous
Je ne poste pas souvent pour poser des questions, mais la j'avoue, je sèche
Voici mon problème, si vous pouviez m'aider ça serait avec plaisir
*note :
RHEL3 = Red Hat Entreprise Linux 3
RHEL5 = Red Hat Entreprise Linux 5


Sous RHEL3 le comportement par défaut de la fonction echo fait qu'elle interpréte automatiquement le \n, le \t etc...
Citation Envoyé par terminal ksh rhel3
$ echo 'bonjour'
bonjour
$ echo 'bonjour\n'
bonjour

$ ./script.sh
echo normal, simple quote
echo normal, simple quote, retour chariot\n

$
Maintenant sous RHEL5 :

Citation Envoyé par terminal ksh rhel5
$ echo 'bonjour\n'
bonjour\n
$ echo -e 'bonjour\n'
bonjour

$
$ ./scriptksh.sh
echo normal, simple quote
echo normal, simple quote, retour chariot\n
echo normal, double quote
echo normal, double quote, retour chariot\n
echo normal, simple quote, option -e
echo normal, simple quote, option -e, retour chariot

$
Mais vous avez remarquez qu'avec un script cela ne marche pas, hormis en ajoutant l'option '-e'
Maintenant je modifie le fichier .kshrc pour y rajouter mon alias
Citation Envoyé par .kshrc
#modification comportement echo
alias echo='echo -e'
mais le résultat ne change que pour les commandes executées directement dans le shell
voici :
Citation Envoyé par terminal rhel5 + alias
$ echo 'bonjour\n'
bonjour

$
$ ./scriptksh.sh
echo normal, simple quote
echo normal, simple quote, retour chariot\n
echo normal, double quote
echo normal, double quote, retour chariot\n
echo normal, simple quote, option -e
echo normal, simple quote, option -e, retour chariot

$
Alors ma question est la suivante : comment redéfinir le comportement par défaut de echo sous RHEL5 pour que celui-ci prennent en compte les scripts ?

ps: dans les scripts, je met bien le #!/bin/ksh pour être sur du shell utilisé, je l'ai trouvé avec $whence ksh