質問: システムログ(ターミナル)のフル出力を得る 私は、あなたがMacintosh/Ubuntu/Windowsコマンドプロンプトのターミナルのようなコンソールコマンドを入力してログに出力するコンソールJavaアプリケーションを作っています。 私はシステム/コンソールコマンドを実行すると、そのコマンドからどのように結果/ログを取得するのだろうかと疑問に思っていましたか? 注:私はリテラルコード+説明をしてください。
回答: これを行うにはいくつかの方法がありますが、最も簡単な方法はこの例をご覧ください。 ``` Process child = Runtime.getRuntime().exec(command); InputStream in = child.getInputStream(); ``` 内部コマンドを2つに分けたい場合は、 Commons IO TeeOutputStream を参照してください。 上記の手法を組み合わせて、内部コマンドか外部コマンドかを問わず、すべての出力をコンソールと「シャドウ」ログファイルの両方に得ることができます。