[英]Gathering output from a Java app and shell command
我正在寫一個應該執行以下操作的shell腳本。
-運行產生輸出的Java應用程序
-運行產生輸出的shell命令-收集兩個輸出並將它們發送到電子郵件中
我可以控制上述所有步驟的源代碼。
是否有從不同來源收集輸出的最佳實踐? 我應該將所有內容重定向到單個臨時文件嗎? 我應該將不同的輸出寫入不同的文件然后將它們串聯嗎? 每種方法的優缺點是什么?
如果您不擔心只使用Java,則可以使用Runtime
類和java(通過exec
)命令一起執行shell命令,這將返回一個Process
對象,在該對象上您可以擁有getInputStream
和getOutputStream
這樣您就可以在一個地方處理Java程序和shell命令的輸出,然后做任何您想做的事情(將其保存在內存中,並通過將輸出流重定向到您用來發送郵件的輸入流中來直接發送,並由另一個exec
)或保存它或其他任何內容。
我希望使用第二個包裝器腳本
假設您使用的是unix shell,則從命令行可以更輕松地進行郵件/格式化和shell腳本調用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.