Window 下 sh 文件在 Linux 转码

2017-05-12  本文已影响59人  研究路上

Window 下 sh 文件在 Linux 转码

​ 因为我组的server经常断网,所以我通常都在本地的sublime中写好代码,然后用sftp插件同步到server上。但是经常发生写的 sh 文件在server 运行出错的情况。

​ 经过查错发现,主要是因为在win下的sublime编辑出的sh 文件,其编码是win的。而Linux上只能运行编码为unix的sh脚本。因此需要对 sh 文件进行编码转换。(注意,目前我只发现了 sh 文件可能需要进行编码转换,可能是因为其它脚本都是由对应解释器(例如 Python)来执行的,而只有 sh 是由系统shell来执行的)

​ 本文主要采用 vim 来进行转码操作

# vim 打开 sh 文件
vim ./test.sh

# 查看文件编码
# vim 命令行的模式下输入
: set ff
# 回车显示 fileformat=dos,代表这是 Win 的编码

# 修改编码
# vim 命令行的模式下输入
: set ff=unix
# 查看当前编码
: set ff
# 回车显示 fileformat=unix,代表这是 unix 的编码(适用于Linux)
# 保存退出
:wq
上一篇 下一篇

猜你喜欢

热点阅读