一般情况下,出现这种情况是因为shell脚本保存为了windows下的DOS格式。在windows上编辑好sh后到linux下运行时常会出现“no such file or directory”,这一般是格式的问题,改成unix格式就可以,具体步骤如下:

第一种方法:

  1. 用vi打开文件:vi 文件名

  2. 按‘:’号键,输入查看文件的格式命令set ff或set fileformat

    显示为:fileformat=dos,表明保存为了DOS格式。

  3. 再按‘:’键输入set ff=unix 或 set fileformat=unix设置格式为unix的

  4. 然后‘:’键后输入wq,保存,再重新运行就可以了

第二种方法

有时使用以上方式无效,可使用如下方法:
sed -i -e ‘s/\r$//’ *.sh

第三种方法

使用dos2unix和unix2dos命令
dos2unix *.sh

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐