如何在Shell脚本中获取Java应用程序的退出状态,标准输出和标准错误流?

贡尼克斯

我的shell脚本需要获取结果(退出状态)并捕获Java应用程序的日志输出,该Java应用程序将日志输出写入其标准输出和标准错误区域。

要获取Java应用程序的状态代码,我可以这样做:

RESULT=$(java <My app>)

要获取其输出流,我可以这样做:

$java <My app> >> Mylog.txt 2>&1 || true;

但是我找不到一种兼具两者的方法。

克里琴

您可以使用该tee命令将输出追加并继续写入stdout:

RESULT_STDOUT=$($java classname | tee -a Mylog.txt)

在这里,-a如果可能的话请发球台附加到Mylog.txt。

我不确定您为什么需要true那里,所以我将其排除在外。这里的主要问题是如何保存错误日志。如果这样做2>&1,它将成为Mylog.txt的一部分,也将成为结果的一部分。如果将错误日志存储在单独的文件中足以满足您的需要,则可以使用以下命令将其重定向

RESULT_STDOUT=$($java classname 2>> Mylog.error.txt | tee -a Mylog.txt)

编辑:退出状态可以通过$PIPESTATUS@Raedwald指出:管道输出并捕获Bash中的退出状态上面的解决方案RESULT_STDOUT捕获标准输出

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Java从单独的进程中获取标准输出和标准错误

来自分类Dev

如何从标准输出和标准错误中删除^ M

来自分类Dev

如何在Java中重置标准输入和输出?

来自分类Dev

如何从程序获取标准输出

来自分类Dev

Shell脚本:如何在控制台上将字符串写入文件和标准输出?

来自分类Dev

如何在 Swift 4.0 Cocoa 应用程序中将标准输出重定向到 NSScrollView?

来自分类Dev

如何在标准Fragment应用程序(不使用AppCompat)中获取棒棒糖“汉堡”作为抽屉图标?

来自分类Dev

如何在JHipster应用程序中标准化REST错误?

来自分类Dev

如何在Gnome 3.20上的标准GTK应用程序和带有标题栏/ CSD的应用程序中更改标题栏的高度

来自分类Dev

脚本写入标准输出和标准错误时如何防止Cron电子邮件

来自分类Dev

如何在Windows Phone 7和8中获取应用程序状态事件?

来自分类Dev

如何获取Android中已安装应用程序的标准名称

来自分类Dev

如何获取Android中已安装应用程序的标准名称

来自分类Dev

如何在Unix Shell中运行命令,然后从/返回Java应用程序的输出

来自分类Dev

在 bash 脚本中重定向标准输入和标准输出

来自分类Dev

如何在失败时退出多行 shell 脚本,并将错误流记录到文件中?

来自分类Dev

在Java标准应用程序中显示ExcelSheet

来自分类Dev

如何使用Unittest测试来测试Python脚本中的标准输入和标准输出?

来自分类Dev

如何在C#中访问PowerShell标准错误输出?

来自分类Dev

何时在命令行应用程序中使用标准错误流?

来自分类Dev

如何访问Ruby中方法的标准输出和标准错误?

来自分类Dev

在Ruby中捕获流式标准输出和标准错误

来自分类Dev

如何在变量和管道标准输出中捕获stderr

来自分类Dev

如何从变量中的命令获取标准输出

来自分类Dev

重定向控制台应用程序的标准输出

来自分类Dev

如何从Expect脚本中捕获标准错误

来自分类Dev

如何在Emacs中写入标准输出

来自分类Dev

如何在Emacs中写入标准输出

来自分类Dev

如何在鱼壳中获取程序的退出状态

Related 相关文章

  1. 1

    Java从单独的进程中获取标准输出和标准错误

  2. 2

    如何从标准输出和标准错误中删除^ M

  3. 3

    如何在Java中重置标准输入和输出?

  4. 4

    如何从程序获取标准输出

  5. 5

    Shell脚本:如何在控制台上将字符串写入文件和标准输出?

  6. 6

    如何在 Swift 4.0 Cocoa 应用程序中将标准输出重定向到 NSScrollView?

  7. 7

    如何在标准Fragment应用程序(不使用AppCompat)中获取棒棒糖“汉堡”作为抽屉图标?

  8. 8

    如何在JHipster应用程序中标准化REST错误?

  9. 9

    如何在Gnome 3.20上的标准GTK应用程序和带有标题栏/ CSD的应用程序中更改标题栏的高度

  10. 10

    脚本写入标准输出和标准错误时如何防止Cron电子邮件

  11. 11

    如何在Windows Phone 7和8中获取应用程序状态事件?

  12. 12

    如何获取Android中已安装应用程序的标准名称

  13. 13

    如何获取Android中已安装应用程序的标准名称

  14. 14

    如何在Unix Shell中运行命令,然后从/返回Java应用程序的输出

  15. 15

    在 bash 脚本中重定向标准输入和标准输出

  16. 16

    如何在失败时退出多行 shell 脚本,并将错误流记录到文件中?

  17. 17

    在Java标准应用程序中显示ExcelSheet

  18. 18

    如何使用Unittest测试来测试Python脚本中的标准输入和标准输出?

  19. 19

    如何在C#中访问PowerShell标准错误输出?

  20. 20

    何时在命令行应用程序中使用标准错误流?

  21. 21

    如何访问Ruby中方法的标准输出和标准错误?

  22. 22

    在Ruby中捕获流式标准输出和标准错误

  23. 23

    如何在变量和管道标准输出中捕获stderr

  24. 24

    如何从变量中的命令获取标准输出

  25. 25

    重定向控制台应用程序的标准输出

  26. 26

    如何从Expect脚本中捕获标准错误

  27. 27

    如何在Emacs中写入标准输出

  28. 28

    如何在Emacs中写入标准输出

  29. 29

    如何在鱼壳中获取程序的退出状态

热门标签

归档