从shell脚本获取状态报告到java代码

时间:2014-06-20 19:16:31

标签: java linux shell

任何人都可以告诉我如何从shell脚本获取状态报告到java代码。 使用案例:我从java代码运行shell脚本,如果我在shell脚本中遇到任何错误(运行时),那么我需要从shell脚本向我的java代码发送一些消息。

所以我怎么能够实现这一点。

3 个答案:

答案 0 :(得分:0)

我确信有更好的方法,但是一种简单的方法是将shell脚本管道错误输出到文件,然后由Java应用程序读取。

答案 1 :(得分:0)

我假设你正在使用ProcessBuilder启动你的shell脚本。

构建过程后,您可以使用getInputStream()从Shell脚本中获取输出流,然后将流复制到您想要的位置。

还有redirectOutput,但我使用它的经验有限。我假设它完成了我上面描述的内容。

答案 2 :(得分:0)

您可以使用以下内容:

Process proc = Runtime.getRuntime().exec("ls -la")
// To get the error code (0=success)
int outCode = proc.exitValue()

如果您需要从脚本向执行它的应用程序发送内容,您可以在脚本中写入stdErr并在java程序中使用proc.getErrorStream