gil390 a écrit:
-------------------------------------------------------
> Et bien c'est fun, car chez moi, ta solution via
> le shell (sans script) fonctionne.
Ok c'est bon tout s'explique, en fait mon shell est zsh...
% echo $#
1
% echo $1
truc machin blabla
Avec bash ça fonctionne.
% echo $#
3
% echo $1
truc machin blabla
----
Je pensais pas qu'il y a tant de différence entre ces 2 shells, par exemple dans le tuto il est dit qu'avec "bash" on ne peut pas faire :
ATTENTION : on ne peut utiliser ni le symbole =, ni la commande interne read pour affecter directement une valeur à un paramètre de position.
$ 23=bonjour
-bash: 23=bonjour: command not found
$
$ read 4
aa
-bash: read: `4': not a valid identifier
$
Si la valeur du premier argument de set commence par un caractère - ou +, une erreur se produit. En effet, les options de cette commande interne commencent par un de ces deux caractères. Pour éviter que ce type d’erreur ne se produise, on utilise la syntaxe : set -- arg ...
$ a=+qui
$ set $a
-bash: set: +q: invalid option
set: usage: set [--abefhkmnptuvxBCHP] [-o option] [arg ...]
$ set -- $a
$
$ echo $1
+qui
$
Avec zsh ça passe sans problème!
Merci bien pour le coup de main, je tournai un peu en rond :-)
Poste le Monday 23 March 2009 18:31:02