解决"/bin/sh^M: bad interpreter: No such file or directory"问题

[TOC]

  事情的缘故起于今天我运行一段在win系统上编写的一键安装Redis的脚本,起名为install.sh,当我运行./install.sh时,报出如下错误,由于我之后解决了没有来得及截图,所以只能以文字的形式描述一下错误了

"/bin/sh^M: bad interpreter: No such file or directory"

  刚开始我以为是我的脚本里面有用到不存在的目录或者文件,在检查代码排除这个问题后,自行Google了一下,发现问题在于:在win系统上编辑脚本在Linux系统执行就容易出现这种问题,为了以后方便出现同样的问题时可以找到解决方法,同时也是为了能够给出现同样问题的小伙伴一点帮助,遂写下这边短文。解决方式如下:

  1. 安装dos2unix

# centos
yum -y install dos2unix
# ubuntu
apt-get install -y dos2unix
  1. 执行转换

# install.sh为我的脚本名字,自行改为自己的脚本名字即可
dos2unix ./install.sh
  1. 执行脚本

./install

大功告成

参考文章:解决”/bin/sh^M: bad interpreter: No such file or directory”问题

    原文作者:Hwan
    原文地址: https://segmentfault.com/a/1190000011988135
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞