shell脚本执行错误 $'\r':command not found
在ubuntu上执行sh脚本时出现$’\r’:command not found
一脸懵逼。。。然后仔细检查脚本,对应行位置只是一个空行
最后各种查询才发现原因,脚本是我在window上编辑的,然后在ubuntu上运行的。。。嗯,所以出现了问题,,,
window下的换行是回车符+换行符,也就是\r\n,而unix下是换行符\n。ubuntu下不识别\r为回车符,所以导致每行的配置都多了个\r,因此是脚本编码的问题。
在ubuntu上执行sudo dos2unix you_shell_name.sh,转换脚本格式,然后,
再次执行脚本,报错消失。
网友评论