首先轉一段關(guān)于回車(chē)和換行的歷史。
Windows系統里面,每行結尾是“<換行><回車(chē)>”,即“\n\r”————此處有誤,恰好將順序顛倒了,從下面可以例子看出來(lái)。
下面在Linux中看看實(shí)際操作的效果。
先生成一個(gè)換行(\n, 0x0A)和回車(chē)(\r, 0x0D)組合的文本
$ echo -en '12\n34\r56\n\r78\r\n' > tmp
以十六進(jìn)制方式查看文本
$ od -t x1 tmp
0000000 31 32 0a 33 34 0d 35 36 0a 0d 37 38 0d 0a
0000016
在Linux的vim中的顯示效果
在windows的記事本中的顯示效果
可見(jiàn)Linux中遇到換行符會(huì )進(jìn)行回車(chē)+換行的操作,回車(chē)符反而只會(huì )作為控制字符顯示,不發(fā)生回車(chē)的操作。而windows中要回車(chē)符+換行符才會(huì )回車(chē)+換行,缺少一個(gè)控制符或者順序不對都不能正確的另起一行。