: $'\r': command not found in Cygwin
If you happen to have this kind of error for no reason, please make sure you convert your shell script file to UNIX format using any text editor like Notepad++. Initially it seems like a weird error but yet another valid issue with Cygwin + XP editor.
Here is an example, If you create a script in Notepad++
-------------------------------------------------------------------
#!/bin/bash
#
# My Cygwin weird error
#
clear
echo "Knowledge is Power"
-------------------------------------------------------------------
When you run this script directly from Cygwin (by editing it from Notepad) you might forget to set the file format to Unix. This often result in following error.
-------------------------------------------------------------------
./print_a_line.sh: line 1: $'\r': command not found
Knowledge is Power
-------------------------------------------------------------------
Or,
You can convert them to UNIX format using shell utility dos2unix
所以最后的解决办法就是:
$ yum install dos2unix
$ dos2unix test.sh
dos2unix: converting file test.sh to UNIX format ...
$ sh test.sh