mvn in bash脚本if语句

我想在bash脚本中运行命令mvn clean.但我想把它放在if语句中.如果clean运行不正常,我想用echo语句退出bash脚本.
以下是导致问题的代码:
如果[mvn clean];然后

我尝试将$(mvn clean)放在if语句中,但是有太多的参数说终端.有谁知道这是否可能?谢谢!

这是你想要的:
mvn clean
if [ "$?" -ne 0 ]; then
    echo "Maven Clean Unsuccessful!"
    exit 1
fi

说明:

> $?是一个special shell variable,它包含最近最近执行的命令的退出代码(无论是否成功终止).
> -ne是测试builtin的选项[.它代表“不平等”.所以我们在这里测试mvn clean的退出代码是否不等于零.
>回应“Maven Clean Unsucccessful!” – 如果是这种情况,那么我们输出一些指示性消息,并使用错误的退出代码退出脚本本身.

当你执行$(mvn clean)时,它会生成一个新的子shell以运行mvn clean,然后简单地将输出到该子shell中的stdout的所有内容从运行mvn clean转储到父shell中使用$(…)的位置.

或者,你可以这样做:

mvn clean || { echo "Maven Clean Unsuccessful"; exit 1; }

这只是做同样事情的简写语法糖.

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...