Linux:從windows到linux的shell腳本編碼和格式


windowslinuxshell腳本編碼和格式問題

 

異常問題 :set ff=unix

  • 啟動腳本在啟動時報錯比如執行sh start.sh,時會報Command not found等等的錯誤,

因為我們在windows編寫或修改后的腳本是dos編碼,而正常的在Linux系統中執行的是unix編碼,在寫shell腳本的時候,在windows的上開發后,上傳到服務器,可能會有文件格式不正確,通過:set ff unix可以將dos格式設置為unix下的文件格式,

解決方法:則在配置文件中非編輯模式中輸入:
ff是fileencoding的簡寫,如下ff也可以寫成fileencoding

 

#查看模式
:set ff

#修改模式
:set ff=unix

#保存
:wq

 

 

1、設置模式

#查看模式,查看當前文本的模式類型,一般為dos,如果是dos需要修改為unix,否則linux運行文件錯誤
:set ff

#修改模式
:set ff=unix

#保存
:wq

 

 

 

2、查詢編碼 

#查詢編碼
:set fileencoding

 

3、轉換編碼 

#轉換當前文本的編碼為指定的編碼,這里的“編碼”常見為gbk utf-8 big5 cp936

#設置編碼
:set fenc=編碼            #比如下面的,注意要:w保存一下,

#設置UTF-8
:set fenc=utf-8

#保存
:wq!

 

4、顯示指定編碼

#以指定的編碼顯示文本,但不保存到文件中。

#這里的“編碼”常見為gbk utf-8 big5 cp936

:set enc=編碼 #比如:

:set enc=utf-8

 

:%s/^M//g  這里是如果文本里面有^M結尾的話用此命令。

 

文章轉載至:https://www.cnblogs.com/zy-303/p/9287063.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM