问题现象:
运行shell脚本shell脚本,运行出错:syntax error near unexpected token `$’do\r
问题分析:
通过nodepad++看不出来有$符号,应该是隐藏了
问题原因:
打开notepad++,单击视图->显示符号->显示所有符号,发现Linux和windows下的回车换行符不兼容
unix为: <LF> : /n
dos为: <CR><LF> : /r/n
mac为: <CR> : /r
问题解决:
使用dos2unix工具进行处理。
在linux上安装dos2unix工具:sudo apt-get install dos2unix(根据系统使用不同命令安装)
安装成功后可以定义一个shell脚本,或者手动执行一下命令
dos2unix *.sh
就会看到:dos2unix: converting file eval1.sh to Unix format ...
就将这个文件转换为了linux下的执行文件了。