簡體   English   中英

收集Java應用程序和Shell命令的輸出

[英]Gathering output from a Java app and shell command

我正在寫一個應該執行以下操作的shell腳本。
-運行產生輸出的Java應用程序
-運行產生輸出的shell命令-收集兩個輸出並將它們發送到電子郵件中

我可以控制上述所有步驟的源代碼。

是否有從不同來源收集輸出的最佳實踐? 我應該將所有內容重定向到單個臨時文件嗎? 我應該將不同的輸出寫入不同的文件然后將它們串聯嗎? 每種方法的優缺點是什么?

如果您不擔心只使用Java,則可以使用Runtime類和java(通過exec )命令一起執行shell命令,這將返回一個Process對象,在該對象上您可以擁有getInputStreamgetOutputStream這樣您就可以在一個地方處理Java程序和shell命令的輸出,然后做任何您想做的事情(將其保存在內存中,並通過將輸出流重定向到您用來發送郵件的輸入流中來直接發送,並由另一個exec )或保存它或其他任何內容。

我希望使用第二個包裝器腳本

  • 調用Java程序
  • 調用shell腳本
  • 將輸出捕獲到單個文件
  • 重新格式化該輸出
  • 適合郵寄
  • 郵寄嗎

假設您使用的是unix shell,則從命令行可以更輕松地進行郵件/格式化和shell腳本調用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM