First of all, you should place the file in /usr/local/bin rather than /bin. Also, if the file is called tomcat.sh, you won't really execute it when you call tomcat, since the name is different. What's the content of your tomcat.sh file? Have you tried just running tomcat with sudo tomcat start?
–
slhck♦Jan 27 '12 at 9:34

The simple answer to this is probably that you need to start the Tomcat service as root. Try sudo tomcat start instead (assuming that tomcat start is correct); that will run the starter process as root.

It's either that, or you aren't executing what you think you are. Remember that in Linux, you must give the full name of the file you want to execute; tomcat and tomcat.sh are distinctly different. This is because unlike on Windows, file extensions in Linux (and other Unixes) are essentially devoid of meaning to the OS.