dos2unix命令用來將DOS格式的文本文件轉換成UNIX格式的(DOS/MAC to UNIX text file format converter)。DOS下的文本文件是以\r\n做爲斷行標誌的,表示成十六進制就是0D 0A。而Unix下的文本文件是以\n做爲斷行標誌的,表示成十六進制就是0A。DOS格式的文本文件在Linux底下,用較低版本的vi打開時行尾會顯示^M,並且不少命令都沒法很好的處理這種格式的文件,若是是個shell腳本。而Unix格式的文本文件在Windows下用Notepad打開時會拼在一塊兒顯示。所以產生了兩種格式文件相互轉換的需求,對應的將UNIX格式文本文件轉成成DOS格式的是unix2dos命令。linux
語法shell
dos2unix [-hkqV] [-c convmode] [-o file ...] [-n infile outfile ...]
選項spa
-k:保持輸出文件的日期不變 -q:安靜模式,不提示任何警告信息。 -V:查看版本 -c:轉換模式,模式有:ASCII, 7bit, ISO, Mac, 默認是:ASCII。 -o:寫入到源文件 -n:寫入到新文件
參數.net
須要轉換到文件。unix
實例orm
最簡單的用法就是dos2unix直接跟上文件名:get
dos2unix file
若是一次轉換多個文件,把這些文件名直接跟在dos2unix以後。(注:也能夠加上-o參數,也能夠不加,效果同樣)it
dos2unix file1 file2 file3 dos2unix -o file1 file2 file3
上面在轉換時,都會直接在原來的文件上修改,若是想把轉換的結果保存在別的文件,而源文件不變,則能夠使用-n參數。form
dos2unix oldfile newfile
若是要保持文件時間戳不變,加上-k參數。因此上面幾條命令都是能夠加上-k參數來保持文件時間戳的。class
dos2unix -k file dos2unix -k file1 file2 file3 dos2unix -k -o file1 file2 file3 dos2unix -k -n oldfile newfile