基於 DOS/Windows 的文本文件在每一行末尾有一個 CR(回車)和 LF(換行),而 UNIX 文本只有一個換行,即
win每行結尾為\r\n,而linux只有一個\n
如果win下的文檔上傳到linux,每行的結尾都會出現一個^M,( ^M是ctrl+v,ctrl+m)
如果是 單個文檔的話,可以用vi打開,執行 :%s/^M//g 來去掉^M,
但如里批量去除的話就不能用vi了,
如果win下的文檔上傳到linux,每行的結尾都會出現一個^M,( ^M是ctrl+v,ctrl+m)
如果是 單個文檔的話,可以用vi打開,執行 :%s/^M//g 來去掉^M,
但如里批量去除的話就不能用vi了,
用sed命令
把win文檔轉換成linux下文檔:
find ./ -type f print0 | xargs -0 sed -i 's/^M$//'
find ./ -type f print0 | xargs -0 sed -i 's/$/^M/'
%s/\r//g