Window文本在Linux中出现的^M问题

 

问题:在Windows中写了一个shell脚本在Linux中死活不能运行,怎么也查不出错误,原来是格式问题。

原因:Windows/DOS系统的换行符是/r/n,Unix/Linux系统的换行符是/n,Windows中的文本在Linux中查看每行末尾会出现^M标记,表示无法识别的字符。^M字符是不可见字符,需要用cat -v 或  vi -b 才能显示。

解决:使用dos2unix命令进行格式转换,或者使用sed将^M删除(^是ctrl+v M是ctrl+M)

posted @ 2017-10-13 00:35  Peterer~王勇  阅读(960)  评论(0编辑  收藏  举报