在Windows中

\r:表示回车,回到当前行的行首,而不会换到下一行,如果接着输出的话,本行以前的内容会被逐一覆盖(光标在该行的头部)

\r\n:表示换行,换到当前位置的下一行(光标在下一行的头部)

在Unix/Linux系统中

\n:表示换行

在Mac中

\r:表示换行

可能的问题

Unix/Linux/Mac系统下的文件在Windows里打开的话,所有文字会变成一行;

而Windows里的文件在Unix/Linux/Mac下打开的话,在每行的结尾可能会多出一个^M符号.

$ echo -en '12\n34\r56\n\r78\r\n' > tmp.txt

windows中的效果: 显示在一行,最后的\r\n才实现换行.

linux中的效果 : 出现^M符号.

注意:

windows中,\r\n才会换行,缺少一个控制符或者顺序不对,都不能正确的另起一行.\r或\n只能够显示一个字符,是没有换行的效果的.

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐