當前位置:編程學習大全網 - 源碼下載 - Linux上如何進行換行符轉換

Linux上如何進行換行符轉換

(壹)  最近在學習shell編程,可是在《Linux程序設計》指定的網站上下載了源碼,使用的時候卻壹直出問題。提示:”bash: ./here1:/bin/sh^M:損壞的解釋器: 沒有該文件或目錄“。之後用vi編輯器打開文件,發覺每壹行的最後有淺藍色的字符'^M'。才知道了問題所在  其實並沒什麽奇怪的,出現這種錯誤的原因是因為Linux和Windows文本文件的行結束標誌不同。在Linux中,文本文件用"\n"(0a)表示回車換行,而Windows用"\r\n"(0d 0a)表示回車換行。所以在Linux中使用Windows的文本文件常常會出現錯誤。為了避免這種錯誤,Linux提供了兩種文本格式相互轉化的命令:dos2unix和unix2dos,dos2unix把"\r\n"轉化成"\n",unixtodos把"\n"轉化成"\r\n"。  命令dos2unix和unix2dos的使用非常簡單,格式為:dos2unix filename  如果想更多的了解這兩個命令,可以查看手冊:  man dos2unix  它會告訴妳dos2unix的高級用法  (二)  Ubuntu下默認沒有安裝dos2unix工具,而且也沒有壹個叫這個名字的工具(我在solaris裏用過dos2unix,不知道為啥Ubuntu沒有)。但是有壹個替代工具——tofrodos , 下面就說壹下它的安裝和使用。  當然還是apt安裝啦。  (1)安裝tofrodos  sudo apt-get install tofrodos  實際上它安裝了兩個工具:todos(相當於unix2dos),和fromdos(相當於dos2unix)  安裝完即可,現在妳已經可以進行文本格式的轉換啦。  比如: todos Hello.txt (即unix2dos Hello.txt)  fromdos Hello.txt (即dos2unix Hello.txt)  (2)做壹些優化  由於習慣了unix2dos和dos2unix的命令,可以把上面安裝的兩個工具鏈接成unix2dos 和dos2unix,或者僅僅是起個別名,並放在啟動腳本裏。  步驟:以下是代碼片段:ln -s /usr/bin/todos /usr/bin/unix2dos  ln -s /usr/bin/fromdos /usr/bin/dos2unix  或者在 ~/.bashrc裏起個別名  添加 alias unix2dos=todos alias dos2unix=fromdos  (三)  另外如果要在目錄中大量替換, 可以使用find + xargs  比如:  find ./model -name *.sh | xargs fromdos

  • 上一篇:海爾l32k1a液晶電視 上的usb接口支持什麽格式的視頻 和最高分辨率
  • 下一篇:白小姐源代碼
  • copyright 2024編程學習大全網