【Shell】Shell 中 执行 sh脚本

必须写这个

#!/bin/bash -ilex

二、a.sh

 上面两个问题都是由于.sh文件的格式为dos格式。而linux只能执行格式为unix格式的脚本。因为在dos/window下按一次回车键实际上输入的是“回车(CR)”和“换行(LF)”,而Linux/unix下按一次回车键只输入“换行(LF)”,所以修改的sh文件在每行都会多了一个CR,所以Linux下运行时就会报错找不到命令。
        我们可以查看该脚本文件的格式,方法是使用命令:vim a.sh进入编辑文件界面,如下图所示。
 

  直接输入":",然后在":"之后输入"set ff"如下图所示

        回车即可看到脚本格式,如下图所示,可以看到当前脚本格式是dos。

         我们需要把格式改为unix,方法是输入":set ff=unix",也可以输入":set fileformat=unix"如下图所示。

    输入完之后,回车即可完成切换格式。然后我们再输入":set ff"来查看格式,如下图所示,可以看到当前脚本格式变成了我们想要的"unix"了。

执行

sh a.sh

三 、推荐
BUILD_ID=dontKillMe nohup ./a.sh start > ./catalina.out 2>&1 &
echo -e "==================脚本执行结束==================$BUILD_ID"

发布了53 篇原创文章 · 获赞 0 · 访问量 814

猜你喜欢

转载自blog.csdn.net/G971005287W/article/details/105210386