bash - 如何根据结果在 Shell 脚本中按顺序运行 jar?
问题描述
假设我是 2 个 jar 文件并且需要从 shell 脚本运行它们,我可以在同一个脚本中使用以下命令。
java -jar myApp1.jar
java -jar myApp2.jar
所以它会先启动myApp1.jar,然后再启动myApp2.jar文件。
问题:只有当myApp1.jar的运行成功/完成时,我才想运行myApp2.jar 。 如果 myApp1.jar 运行失败,它将退出 shell 脚本。
任何人都可以帮助我如何实现这一目标?
解决方案
java -jar myApp1.jar || exit 1 && java -jar myApp2.jar
或者
#!/bin/sh
if java -jar myApp1.jar; then
echo 'myApp1.jar -- Successful!'
if java -jar myApp2.jar; then
echo 'myApp2.jar -- Successful!'
else
echo 'myApp2.jar -- Failed!'
exit 1
fi
else
echo 'myApp1.jar -- Failed!'
exit 1
fi
推荐阅读
- javascript - 列表 JS 中的 JSON
- sql - Spark count 分组中的单词数
- html - 如何创建右对齐的注销按钮?
- python - 从 df 中查找最大值和最小值,以及相应的列名和行名
- javascript - 加载不显示表单上传的图像
- python - Pandas 版本的“如果为真,此处为 VLOOKUP,如果为假,则在其他地方为 VLOOKUP
- python - 在 Django 上找不到页面 - 空路径
- .net - .NET IL / MSIL 评估堆栈基础
- python - oracle绑定变量to_date参数错误
- c++ - 调用 std::thread.detach 时的意外行为