执行shell脚本提示“-bash: ./checkP.sh: /bin/sh^M: bad interpreter: No such file or directory”解决方法...

在windows机器下新建了一个shell脚本如下

sed -i 's/\r$//' checkP.sh

在Linux上的很多操作一般都是用脚本来实现了,特别是线上的服务器,不用脚本是,直接在上面敲是很危险的,一不小心,手一抖, 那就完了。但是,很多朋友自己的笔记本用的都是windows系统,这真把Ubuntu做为自己笔记本系统的人不会很多,不过我还是喜欢Ubuntu,之 前在Ubuntu上写了一些脚本,并且试下来也没什么问题,然后就把这些脚本放到了windows系统的工作机上去了,之后呢,又在上面编辑过了,结果, 就出现了现在我遇到的问题,我把windows上的脚本弄到Linux上,非常熟练的,chmod u+x test.sh ,./test.sh 结果,报错了:/bin/bash^M: bad interpreter,从这个提示来看是/bin/bash后面多了一个^M,我也打开看过,没见到^M,后来仔细一想,原来问题可能出现在文件格式 上,

vim test.sh

:set ff?

fileformat=dos

上面的提示,显示这个文件的格式是dos的,问题原来就是出来这边,下面就简单了,只要:set fileformat=unix 就可以了!

接下来我的shell脚本就可以跑起来了!

 

方法2:

yum -y install dos2unix

dos2unix jstack.sh



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值