Linux - 回車符和換行符及其在不同系統上的區別

襲冷發表於2018-05-30
一、概念

    在電傳打字機打字時,在每行後面加兩個表示結束的字元,分別叫做回車和換行

    回車,是告訴打字機把列印頭定位在左邊界;符號 \r;十六進位制 0x0d

    換行,是告訴打字機把紙張向下方移動一行;符號 \n;十六進位制 0x0a


二、區別

    在Unix系統裡,每行結尾只有"<換行>",即"\n"

    在Win系統裡,每行結尾是"<回車><換行>",即"\r\n"

    在Mac系統裡,每行結尾是"<回車>",即"\r"


三、問題

    所以,在Unix中遇到換行符就會進行回車+換行的操作,回車符反而只會作為控制字元"^M"顯示;而windows中要回車符+換行符才會發生回車+換行的操作,缺少一個或者順序不對都不能正確的另起一行

    因此,Unix/Mac系統下的檔案在Windows裡開啟的話,所有文字會變成一行;而Windows裡的檔案在Unix/Mac下開啟的話,在每行的結尾可能會多出一個^M符號

相關文章