欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

文本文件中的换行符在不同操作系统中的区别

程序员文章站 2024-02-25 17:26:57
...

文本文件中的换行符在不同操作系统中表现各有不同,这里我们先列一下各自的区别,然后再说一下文本在不同系统间流转使用需要注意的相关事项


Ascii中的空白字符编码

ASCII Name Description C Escape Sequence
nul null byte \0 (zero)
bel bel character \a
bs backspace \b
ht horizontal tab \t
np formfeed \f
nl newline \n
cr carriage return \r

不同操作系统的换行符

operating system end of line sequences
Windows \r\n
Unix \n
Mac \r

常见换行符相关问题

Windows上的文本转移到Linux上,替换处理换行符

I、 在Windows上创建的sh脚本,复制到Linux上执行, 就可能会因为换行符的原因而报错

  1. 报错提示类似如下
line 7: $'\r': command not found
  1. 我们查看下文件内容及编码
# 使用`cat -v`可以查看到^M(\r\n)字符
cat -v restart.sh

#!/bin/bash^M
cd `dirname $0`^M
sh ./stop.sh^M
sh ./start.sh^M

# 使用vi命令可以查看并设置文件编码
vi restart.sh
# 查看编码
set: ff    ---回车
fileformat=doc (文件编码为windows平台)
fileformat=unix (文件编码为unix平台)
# 修改编码
set: ff=unix   --- 回车
:wq!   ---保存退出(文件编码被改为unix, 此时^M字符也就被消除了)

相关标签: Tool