vim下出現^M怎么解決


將window下的文本文件上傳到linux上,在讀取數據文件時,在每一行數據后會出現^M字符。
 
為什么會出現這種情況呢:
因為windows、linux、os系統的換行符標准不同:
先了解下概念, 回車:用“\r”表示,ASCII碼中的“代碼”為CR,意義是將光標移到當前行的首位; 換行:用“\n”表示,ASCII碼中的“代碼”為LF,意義是將光標移到下一行。
(1) DOS/Windows系統采用CRLF(回車+換行)表示下一行,即“\r\n”;
(2) Linux/UNIX系統采用LF表示下一行,即“\n”;
(3) MAC系統采用CR表示下一行,即“\r”;
 
怎么解決:
vim中出現^M怎么解決:$ sed -i 's/^M/\n/g' myfile.txt //注意:這里的“^M”要使用“CTRL-V CTRL-M”生成,而不是直接鍵入“^M”
另外,在Notepad++中,通過點擊菜單中Edit->EOL Conversion選擇不同的轉換格式可以更改文本的換行符


免責聲明!

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



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