`
fandayrockworld
  • 浏览: 308910 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

shell批处理中利用vi设置文件的fileformat

 
阅读更多

dos格式文件传输到unix系统时,会在每行的结尾多一个^M,即dos文件中的换行符“\r\n”会被转换为unix文件中的换行符“\n”,而此文件若是一个可执行文件的话,会导致此文件不能被执行,转换的方式有下面一个:

 

 

vi exec.sh
:set ff=unix(或者:set fileformat=unix)
:wq

 

如果以上步骤要求在一个shell批处理文件中完成,那么该怎么办?

 

可以这样:

 

vi +':w ++ff=unix' +':q' ${file}

 这样一条命令就可以搞定了,但是要严格注意上面空格的位置,不能多不能少。

 

参见:

http://stackoverflow.com/questions/82726/how-do-i-convert-dos-files-to-linux-files-in-vim

分享到:
评论
1 楼 sunshine_bean 2018-04-24  
多谢,帮了大忙

相关推荐

Global site tag (gtag.js) - Google Analytics