从windows到linux的shell脚本编码和格式问题

Posted LWJ303

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从windows到linux的shell脚本编码和格式问题相关的知识,希望对你有一定的参考价值。

windowslinuxshell脚本编码和格式问题

 

 

从windows到Linux的shell脚本编码和格式问题

1、异常问题 :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=unix

:wq

2、查询编码 :set fileencoding

:set fileencoding

3、转换编码 :set fenc=utf-8

转换当前文本的编码为指定的编码,这里的“编码”常见为gbk utf-8 big5 cp936

:set fenc=编码            #比如下面的,注意要:w保存一下,

:set fenc=utf-8

:w

4、显示指定编码 :set enc=utf-8

以指定的编码显示文本,但不保存到文件中。

这里的“编码”常见为gbk utf-8 big5 cp936

:set enc=编码 #比如:

:set enc=utf-8

5、查看模式 :set ff

查看当前文本的模式类型,一般为dos,unix

:set ff

6、设置模式 :set ff=unix

:set ff=unix

:set ff=dos

:w

 

:%s/^M//g  这里是如果文本里面有^M结尾的话用此命令。

 

 


以上是关于从windows到linux的shell脚本编码和格式问题的主要内容,如果未能解决你的问题,请参考以下文章

windows编写shell注意事项

shell脚本空行造成“: not found.sh“报错的解决方法(unix与windows文本格式切换)

嵌入式Linux从入门到精通之第六节:shell脚本

嵌入式Linux从入门到精通之第六节:shell脚本

linux下修改文件编码格式

windows服务器和linux服务器ftp取数shell脚本