问题描述:写linux脚本时。sh文件中,在win环境下,编辑了.sh文件,然后上传到linux服务器中,出现如下错误:

-bash: ./start.sh: /bin/sh^M: bad interpreter: No such file or directory

解决方案:这是win的编码引起的,win环境下编辑是doc格式,linux下需要unix格式的文件。
可通过如下解决。

1.查看该文件:vim start.sh

2.查看该错误文件的格式(一般报错的文件格式是DOS):

:set ff

3.修改该文件格式为UNIX:

:set ff=unix

4.再保存。

:wq!

查看脚本文件是dos格式还是unix格式的几种办法。
cat -A filename 从显示结果可以判断,dos格式的文件行尾为^M,unix格式的文件行尾为,unix格式的文件行尾为。
————————————————
版权声明:本文为CSDN博主「masterbu」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/lA6Nf/article/details/80385232

Logo

更多推荐