When you run a command, the shell searches the
PATH variable (or some hash table, depending on the shell#) where to find the executable. But usually the current working directory (
.) isn't included. So, you need to tell the shell where to find your script by prepending
./ as explained by Floris.
The purpose of that default setting is, that you are saved from accidentally executing a script (in the current dir) which is named e.g.
rm instead of the expected command in
/bin. This is especially crucial for root, because the local script can behave completely different as you'll expect it!
# I wrote a little bit more about hash tables in this answer.