shell腳本每行后面多了一個^M的原因和解決辦法


  當執行在Windows系統下修改過的腳本時,會提示存在^M的錯誤,但是在Linux下直接使用vim打開並不存在。此時可以使用vim -b來打開腳本文件,就可以發現每行的末尾都存在^M。

  造成這樣的原因是不同的系統使用了不同的換行符。在Windows下文本文件的每一行結尾都有一個回車('\n')和換行符('\r');在Linux下文本文件的每一行結尾都有一個回車('\n');在Mac下文本文件的每一行結尾都有一個換行符('\r')。

  所以,當在Linux使用vim打開Windows編輯過的腳本時,^M代表的就是換行符('\r')。

  解決辦法也很簡單就是使用vim -b打開腳本文件,然后使用在交互模式下輸入替換命令:%s/^M//g(注意:^M是由<Ctrl>+<v>和<Ctrl>+<m>打出來的),最后在交互模式下輸入保存退出命令:wq即可。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM