從windows到linux的shell腳本編碼和格式問題linux
從windows到Linux的shell腳本編碼和格式問題shell
一、異常問題 :set ff=unixwindows
由於咱們在windows編寫或修改後的腳本是dos編碼,而正常的在Linux系統中執行的是unix編碼,在寫shell腳本的時候,在windows的上開發後,上傳到服務器,可能會有文件格式不正確,經過:set ff unix能夠將dos格式設置爲unix下的文件格式,服務器
解決方法:則在配置文件中非編輯模式中輸入:
ff是fileencoding的簡寫,以下ff也能夠寫成fileencoding編碼
:set ff=unixunix
:wqutf-8
二、查詢編碼 :set fileencoding開發
:set fileencoding配置
三、轉換編碼 :set fenc=utf-8coding
轉換當前文本的編碼爲指定的編碼,這裏的「編碼」常見爲gbk utf-8 big5 cp936
:set fenc=編碼 #好比下面的,注意要:w保存一下,
:set fenc=utf-8
:w
四、顯示指定編碼 :set enc=utf-8
以指定的編碼顯示文本,但不保存到文件中。
這裏的「編碼」常見爲gbk utf-8 big5 cp936
:set enc=編碼 #好比:
:set enc=utf-8
五、查看模式 :set ff
查看當前文本的模式類型,通常爲dos,unix
:set ff
六、設置模式 :set ff=unix
:set ff=unix
或
:set ff=dos
:w
:%s/^M//g 這裏是若是文本里面有^M結尾的話用此命令。