现象:
shell脚本使用Nodepad++进行本地编辑,在编辑后上传到linux机器进行执行时提示“syntax error near unexpected token for((i=0;i<$length;i++))”
解决方案:
思路:经查询是因为所处理的文件换行符是dos格式的"\r\n",可以使用cat -v 文件名 来查看换行符是否是,如果是上述,则行尾会是^m
解决:
使用sed命令处理一下文件,使格式保持为linux格式,如下:
sed 's/\r//' 源文件.sh > 转换后文件.sh
总结:由于win与linux的换行符不一致导致,保持一致即可。