Quelqu'un peut-il m'expliquer ce que fait le shell dans les deux exemples A) et B) ci-dessous? Il se comporte évidemment différemment, mais je ne peux pas comprendre pourquoi la sortie est différente.
Exemple:
Ayons un script dans notre répertoire actuel nommé bla.sh
avec une seule commande:
echo ${0##/*} hello
A)
Commencé comme: ./bla.sh
donne:./bla.sh hello
B)
Commencé comme: . bla.sh
donne:-bash hello
Puisque j'utilise ceci dans un script, la deuxième sortie (à cause du "-" devant le -bash) tue la commande. Bien sûr, un simple --
avant l' ${...}
aide, mais j'aimerais comprendre ce qui cause la sortie en premier lieu.
J'adore bash. Et vi [m]. Mais je m'égare…