bash pour la boucle de travailler en ligne de commande, mais pas dans le script

Lorsqu'une exécutez une instruction for dans debian en ligne de commande bash, il fonctionne très bien.
Mais quand je le lance dans un script sh ou de l'exécuter avec la commande bash, c'est garder le rapport d'erreur "près de jeton inattendu "faire""
Où est la différence?

[leon@www] ~/tmp $ for i in {1..10}; do echo $i; done
1
2
3
4
5
6
7
8
9
10
[leon@www] ~/tmp $ bash for i in {1..10}; do echo $i; done
-bash: syntax error near unexpected token `do'

BTW, tous fonctionne bien dans centos nécessitant.

OriginalL'auteur leon | 2011-08-15