Shell script error – bad interpreter messages and solution

Posted on in Categories , , last updated November 8, 2006

. I have downloaded some shell script but when I try to run these shell scripts I get error bad interpreter… How do I fix this error?

A. Make sure you have required shell installed. Each shell script specifies default interpreter at top of the script. For example, consider following script:
#!/bin/sh
# This is...
clear
A=`pwd`
...
.....
...

#!/bin/sh is default interpreter to execute this script. Use ls command to verify that you have /bin/sh installed
$ ls /bin/sh

If /bin/sh is not installed, use rpm, up2date or apt-get command to install required shell.

Another problem is if script was edited or written on MS-DOS platform, you will see CR/CRLF in script. Use dos2unix command to convert theses scripts to UNIX format.
dos2unix script-file-name

Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin and a trainer for the Linux operating system/Unix shell scripting. He has worked with global clients and in various industries, including IT, education, defense and space research, and the nonprofit sector. Follow him on Twitter, Facebook, Google+.

3 comment

  1. thanks a lot my problem got solved, i tried all the ways when i used dos2unix it worked, I forgot that i edited the script previously in windows.

  2. where do you use dos2unix?
    I could not use it in command prompt and in unix
    is there a dos2linux command?
    thanks!

Comments are closed.