windows 系统行尾的结束符由 回车符 和 换行符 两个符号组成( “\r\n”),而 Unix 系统的行尾结束符只有 “换行符”("\n")。
如果你是两个系统交叉使用,这个差异就会变得很蛋疼。试着想象一下,你在 windows 系统使用 IED 把代码写得很优雅,而在 Linux 系统使用 vim 打开却发现每一行结尾都加上了 “^M”;又或者当你信心满满的写好一个 shell 脚本,拉到 Linux 上运行却一堆报错 “找不到命令:\r”;轻则逼死强迫症,重则机毁人亡。
使用 vim 编辑器或者命令行也可以在 “\r\n” 和 “\n” 之间快速转换,但是对于手残党来说,不合适。这时候该 dos2unix 出场了。
安装 dos2unix
$ sudo apt install dos2unix
转换
$ dos2unix test.c
$ find /home/lk/test -name "*" | xargs dos2unix
逆向转换
$ unix2dos test.c
当然,如果你能记住 vim 的操作,或者一些花里胡哨的正则替换,那就不推荐用这个了。 我们的原则是能秀就秀。
|