我在bash中执行这个简单的jar
命令:
jar cvfm control.jar Manifest <class list>
如何在执行此命令时自动检测故障? 失败意味着命令只是由于以下原因而无法执行:
Manifest
,jar
命令本身的不当使用,ClassNotFoundError
等请注意,我不有兴趣知道是否存档了正确的类。所以我不会认为这是一次失败。
我目前只是使用详细选项来检查一切是否顺利。但是,我觉得这很费时间。我只是想知道jar
命令是否成功归档了一些类文件。有没有办法在bash中执行此操作?
我找到的关于此问题的最近的其他资源是:How to detect error if archive of jar file failed?。但是,我对批处理文件一无所知,我有兴趣在bash shell中执行此操作。
答案 0 :(得分:2)
这是查看命令是否成功的最基本方法:
if jar cvfm control.jar Manifest <class list> ; then
echo "Success"
else
echo "Oops!"
fi
如果您只想检测故障,请反转测试:
if ! jar cvfm control.jar Manifest <class list> ; then
echo "Oops!"
fi
或明确测试结果:
jar cvfm control.jar Manifest <class list>
if (( $? )) ; then
echo "Oops!"
fi