一、概述
今天在 windows 环境下 通过 Idea
写 shell
脚本,上传到 linux 环境后执行数包如下错误:
-bash: ./xxx.sh: /bin/sh^M: bad interpreter: No such file or directory
二、问题原因
此问题是由于在 windows 下编写的 shell
文件的结尾符 是 dos
命令下的,所以在 linux 下无法执行。
可以通过如下步骤,查看。
1、执行命令:
vim xx.sh
2、在打开的文件中最后可以看到,如下所示。可以看到这个文档的结束符为。dos
三、解决方式
解决方式一
步骤如下:
1、执行如下命令打开文档。
vim xx.sh
2、执行如下命令修改结束符
:set ff=unix
3、执行 wq
保存文件。
解决方式二
可以直接通过 idea
修改。如下所示,首先选中文件。
解决方式三
可以通过 notepad++ 解决,如下所示
英文版的 notepad++ 为 Edit > EOL Conversion > Unix(LF)
解决方式四
通过 eclipse 解决。首先需要先选中文件