Windows下的shell脚本放到Linux下乱码

windows操作系统上默认编码GB2312,而在Linux上的默认编码都是utf-8。

所以,Windows下的shell脚本放到Linux下会乱码,执行后报错syntax error near unexpected token '$'\r''。

这种情况发生的原因是因为你所处理的文件换行符是dos格式的"\r\n"
可以使用cat -v 文件名 来查看换行符是否是,如果是上述的,则行结尾会是^m
需要转换成linux/unix格式的"\n"
具体转换办法就是转换换行符
可以用sed命令处理一下文件,命令如下:
sed 's/\r//' 原文件 >转换后文件

 

参考链接:https://www.jianshu.com/p/55597646fa84

发布了9 篇原创文章 · 获赞 0 · 访问量 162
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览