windows 下生成的shell脚本在linux下执行

由于部分命令不支持win系统环境,为了折衷,将部分代码在win系统下运行生成数据文件以及shell脚本,然后将其上传到ubuntu10.04上执行脚本处理。

         但是当将shell脚本上传到ubuntu后,执行起来就出现了错误,不能得到正确的中间数据文件,生成的文件名称后面都带‘?’这样一个符号。

         网上查阅后说这种原因是说明文件没有正常结束。。。 之后又查阅了部分博客后,博主说这是CR/LF问题,就是在win系统中回车=CR换行=LF而在linux系统下回车换行都是=LF,所以win系统下文件中每行都会多一个CR。验证后的解决方案:

                在linux系统中使用vim打开文后,在命令模式下输入:set ff=unix

                然后保存文件,之后通过sh执行就OK了。


                之后试了下在.vimrc中添加 set ff=unix设置,之后在修改shell文件的时候不再输入这个命令,保存后运行失败。

                很多情况下win系统下生成的shell文件到linux下是直接运行的,总不能每次都使用vim进入,设置后保存退出吧! 如果有好的解决方式请留言,我也会继续关注这个。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值