什么是dos2unix?

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

Windows格式文件的换行符为\r\n ,而Unix&Linux文件的换行符为\n。dos2unix命令其实就是将文件中的\r\n 转换为\n。

什么是unix2dos?

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

命令语法

dos2unix [options] [-c convmode] [-o file ...] [-n infile outfile ...]

unix2dos [options] [-c convmode] [-o file ...] [-n infile outfile ...]

命令参数

此命令参数是Red Hat Enterprise Linux Server release 5.7下dos2unix命令参数,不同版本Linux的dos2nnix命令参数有可能不同。

参数 长参数 描述
-h 显示命令dos2unix联机帮助信息。
-k 保持文件时间戳不变
-q 静默模式,不输出转换结果信息等
-v 显示命令版本信息
-c 转换模式
-o 在源文件转换,默认参数
-n 保留原本的旧档,将转换后的内容输出到新档案.默认都会直接在原来的文件上修改

使用示例

dsw@ubuntu:~/work/dict$ ll
total 5592
drwxrwxr-x 2 dsw dsw 4096 Sep 30 15:15 ./
drwxrwxr-x 14 dsw dsw 4096 Sep 30 15:13 ../
-rwxr--r-- 1 dsw dsw 2857196 Sep 30 15:15 book.csv*
-rwxr--r-- 1 dsw dsw 2857196 Sep 30 15:15 test.csv*

dsw@ubuntu:~/work/dict$ dos2unix book.csv            //在源文件基础上将此文件从dos格式转换为unix格式
dsw@ubuntu:~/work/dict$ dos2unix -n book.csv newbook.csv   //保留源文件
dsw@ubuntu:~/work/dict$ dos2unix book.csv book.csv      //一次转换多个文件
dsw@ubuntu:~/work/dict$ dos2unix -k book.csv            //不改变转换后文件的时间戳
dsw@ubuntu:~/work/dict$ dos2unix -q book.csv          //静默转换

参考文档

  • 每天一个linux命令(6):dos2unix unix2dos