shell脚本执行错误 $'\r':command not found

出现这个问题原因是换行问题

    在windows下编辑脚本 换行符为“\n\r”,但是在linux下换行符为“\n”。在Windows下编辑完成后,然后在linux下运行,换行符只是使用了“\n” , 剩下的 “\r”作为独立的命令执行,然而“\r”并不是一个shell 命令因此报错。

解决方法:

   sudo apt-get install dos2unix

  dos2unix  <脚本名>

然后问题就解决了。另外也有Unix2dos 反向的转换工具。

 

posted @ 2018-04-12 19:10  初心未泯  阅读(297)  评论(0编辑  收藏  举报