使用 dos2unix 解决跨操作系统换行符问题

dos2unix 是将 Windows 格式文件转换为 Unix/Linux 格式的实用命令。 unix2dos 则是和 dos2unix 互为孪生的一个命令,将 Linux&Unix 格式文件转换为 Windows 格式文件的命令。 各个操作系统安装方法如下: OS X brew install

dos2unix 是将 Windows 格式文件转换为 Unix/Linux 格式的实用命令。

unix2dos 则是和 dos2unix 互为孪生的一个命令,将 Linux&Unix 格式文件转换为 Windows 格式文件的命令。

各个操作系统安装方法如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
OS X
brew install dos2unix
Debian
apt-get install dos2unix
Ubuntu
apt-get install dos2unix
Alpine
apk add dos2unix
Arch Linux
pacman -S dos2unix
Kali Linux
apt-get install dos2unix
CentOS
yum install dos2unix
Fedora
dnf install dos2unix
Windows (WSL2)
sudo apt-get update sudo apt-get install dos2unix
Raspbian
apt-get install dos2unix
Dockerfile
dockerfile.run/dos2unix
Docker
docker run cmd.cat/dos2unix dos2unix

下面以 15分钟学会Emacs Lisp 教学源文件为例展示效果。

1
2
$ dos2unix learn-emacs-lisp-zh.el
dos2unix: converting file learn-emacs-lisp-zh.el to Unix format...

转换前后的对比如下:

上方是转换后的文件,下方是转换前的文件,使用 Emacs 打开。

可以看到,转换前该文件使用的是 Windows 风格的换行符,转换后该文件使用 Unix 风格换行符。

Unix 系统中:每行结尾只有 “<换行>”,即 \n; Windows 系统中:每行结尾是 “<回车><换行>”,即 \r\n; Mac 系统中:每行结尾是 “<回车>”,即 \r“。

参考文献


使用 dos2unix 解决跨操作系统换行符问题
https://www.frytea.com/post/20230116162900.html
作者
Tianlun Song
发布于
2023年1月16日
更新于
2024年6月10日
许可协议