Shell脚本报错:-bash: ./switch.sh: /bin/bash^M: bad interpreter: No such file or directory

写了一个服务器启动脚本:

#!/bin/bash
 
JAVA_HOME=/usr/java/jdk1.8.0_131
 
JAVA=$JAVA_HOME/bin/java
 
nohup $JAVA -jar microservice-0.0.1-SNAPSHOT.jar -Djava.ext.dirs=$JAVA_HOME/lib &
运行后报错:

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

主要原因是.sh是在Windows下编辑后,在linux系统里执行的。.sh文件的格式为dos格式。而linux只能执行格式为unix格式的脚本。

我们可以通过vi编辑器来查看文件的format格式。步骤如下:

1:首先用vi命令打开当前的shell脚本文件

2:在vi命令模式中使用 :set ff 命令:

:set ff=unix

猜你喜欢

转载自my.oschina.net/u/3295928/blog/1636057
今日推荐