问题

Windows 和 Linux 的文本文件换行符不同(Windows 用 \r\n,Linux 用 \n),在 Linux 下打开 Windows 编辑的脚本会报错。需要用 dos2unix 转换。

Ubuntu 默认没有 dos2unix,但有替代方案。

方案一:安装 tofrodos(推荐)

sudo apt-get install tofrodos

安装后提供两个命令:

命令作用
fromdos fileWindows → Linux(相当于 dos2unix)
todos fileLinux → Windows(相当于 unix2dos)

习惯原命令名的话,创建符号链接:

sudo ln -s /usr/bin/fromdos /usr/bin/dos2unix
sudo ln -s /usr/bin/todos /usr/bin/unix2dos

或在 ~/.bashrc 中设置别名:

alias dos2unix=fromdos
alias unix2dos=todos

方案二:直接安装 dos2unix

较新版本的 Ubuntu 可以直接安装:

sudo apt-get install dos2unix

使用

dos2unix script.sh    # 转换为 Unix 格式
unix2dos file.txt     # 转换为 Windows 格式