栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

linux执行shell脚本时报错:解释器错误,没有那个文件和目录

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

linux执行shell脚本时报错:解释器错误,没有那个文件和目录

问题背景

最近在构建虚拟机服务器集群时,由于需要在节点之间相互传输、分发文件,因此相比手动挨个传输,通过shell脚本的方式效率会更高。但是在window本地使用Notepad++编辑完上传至虚拟机后一直报错解释器错误,没有那个文件和目录。仔细检查文件路径以及脚本编写,并未发现错误。

问题原因

经查阅资料后得到,shell脚本编写时的系统与运行时的系统不一致。我是在windows系统下编写,linux系统下运行。windows下的.sh文件的格式为dos格式,和Linux只能执行unix格式的脚本。
在windows/dos格式中,每按下一次回车键实际上输入了“回车(CR)和换行(LF)”,而Linux/unix按下回车键只输入“换行(LF)”。

解决方法

1.用vi打开.sh文件
2.在vi命令模式中使用命令:set off
3.将文件格式从dos修改至unix,使用命令:set ff=unix
4.退出,重新执行脚本

参考链接:https://blog.csdn.net/h363659487/article/details/79813178

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/844720.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号