Scalaで外部プロセスを実行し、終了コードと出力の両方を取得するにはどうすればよいですか?

ハウロン

終了したら、外部プロセスを呼び出して、その終了コードと標準出力の両方を読み取る方法は?

を使用sys.Processすると、成功のために0以外の異なる終了コードで例外がスローされます。

ハウロン

(私はfreenode #javaでこの質問をし、解決策を見つけたらここに投稿するように要求されたので、ここに行きます)

簡単なアプローチは、sys.ProcessBuilderを使用することです。

  def RunExternal(executableName: String, executableDir: String) : (Int, List[String]) = {
    val startExecutionTime = System.currentTimeMillis()

    val pb : ProcessBuilder = new ProcessBuilder (executableName)
    pb.directory(new java.io.File(executableDir))

    val proc = pb.start()
    proc.waitFor()

    val exitCode = proc.exitValue()
    val output = scala.io.Source.fromInputStream(proc.getInputStream).getLines.toList

    val executionTime = System.currentTimeMillis() - startExecutionTime

    logger.info(String.format(s"Process exited with exit code: ${exitCode}."))
    logger.info(String.format(s"Process took ${executionTime} milliseconds."))

    (exitCode, output)
  }

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

サブプロセスで出力コードとリターンコードの両方を取得するにはどうすればよいですか?

分類Dev

Pythonでサブプロセスから戻りコードと出力の両方を取得するにはどうすればよいですか?

分類Dev

複数のコマンドを並行して実行し、両方からの出力を確認するにはどうすればよいですか?

分類Dev

両方が終了したときに、1つのコールバックと並行して2つのビルド済みjQueryアニメーションシーケンスを実行するにはどうすればよいですか?

分類Dev

Kubernetes-コンテナを2つのプロセスで開始し、両方にバインドするにはどうすればよいですか?

分類Dev

外部コマンドはどのようにして出力と終了ステータスの両方をRubyに返すことができますか?

分類Dev

Pythonで「プール」を使用してプロセッサごとのプロセス終了時間を取得するにはどうすればよいですか?

分類Dev

ゼロ以外の終了コードを返す外部プログラムの出力をキャプチャするにはどうすればよいですか?

分類Dev

特定のIPとポートで実行されているプロセスを強制終了するにはどうすればよいですか?

分類Dev

親の終了後に閉じる子としてShellExecuteExを使用してプロセスを実行するにはどうすればよいですか?

分類Dev

10進数と整数の両方の出力を取得するにはどうすればよいですか?

分類Dev

現在カーネルモードで実行されているすべてのプロセスを取得するにはどうすればよいですか?

分類Dev

実行中のプロセスの実時間を取得するにはどうすればよいですか?

分類Dev

コマンドを実行して、その終了コードをより少ない文字で取得するにはどうすればよいですか?

分類Dev

smemコマンドを実行するときに、サイズがゼロのフィールドなしで出力を出力するようにbashを取得するにはどうすればよいですか?

分類Dev

終了後、終了する前に、psutil.Popenを使用してプロセスのcpu_timesを実行するにはどうすればよいですか?

分類Dev

cronログとスクリプト出力の両方を同じファイルに出力するにはどうすればよいですか?

分類Dev

cssとjsを使用して動的テキストのスケールアップとスライドアップの両方を確実に実行するにはどうすればよいですか?

分類Dev

ワープ内のすべてのスレッドで条件が同じであることがわかっている場合、CUDAプログラムで条件の両方のブランチを実行しないようにするにはどうすればよいですか?

分類Dev

プロデューサースレッドとコンシューマースレッドの両方が無限に次々に実行されるようにするにはどうすればよいですか?

分類Dev

grettyとwarの両方に対して同じリソースフィルタリングを実行するにはどうすればよいですか?

分類Dev

4.2を作成する前に終了ステータスと$(シェルコマンド)の出力を取得するにはどうすればよいですか?

分類Dev

WindowsでDockerとAndroid Studio Emulatorの両方を実行するにはどうすればよいですか?

分類Dev

WindowsでDockerとAndroid Studio Emulatorの両方を実行するにはどうすればよいですか?

分類Dev

Java内から実行されたプロセスからbashコマンドの終了コードを取得するにはどうすればよいですか?

分類Dev

コマンドプロンプトからさまざまなパラメータを取得するバックグラウンドプロセスとしてPythonスクリプトを実行するにはどうすればよいですか?

分類Dev

Python:終了時ではなく、出力するたびにサブプロセスの出力を取得するにはどうすればよいですか?

分類Dev

Freebsd OSのpsqlコマンドラインでスクリプトを実行しているときに、エラーメッセージとともに出力をファイルに記録するにはどうすればよいですか?

分類Dev

GoogleスプレッドシートでSUMPRODUCTを実行するにはどうすればよいですか。ただし、両方のベクトルのテキストを条件としますか?

Related 関連記事

  1. 1

    サブプロセスで出力コードとリターンコードの両方を取得するにはどうすればよいですか?

  2. 2

    Pythonでサブプロセスから戻りコードと出力の両方を取得するにはどうすればよいですか?

  3. 3

    複数のコマンドを並行して実行し、両方からの出力を確認するにはどうすればよいですか?

  4. 4

    両方が終了したときに、1つのコールバックと並行して2つのビルド済みjQueryアニメーションシーケンスを実行するにはどうすればよいですか?

  5. 5

    Kubernetes-コンテナを2つのプロセスで開始し、両方にバインドするにはどうすればよいですか?

  6. 6

    外部コマンドはどのようにして出力と終了ステータスの両方をRubyに返すことができますか?

  7. 7

    Pythonで「プール」を使用してプロセッサごとのプロセス終了時間を取得するにはどうすればよいですか?

  8. 8

    ゼロ以外の終了コードを返す外部プログラムの出力をキャプチャするにはどうすればよいですか?

  9. 9

    特定のIPとポートで実行されているプロセスを強制終了するにはどうすればよいですか?

  10. 10

    親の終了後に閉じる子としてShellExecuteExを使用してプロセスを実行するにはどうすればよいですか?

  11. 11

    10進数と整数の両方の出力を取得するにはどうすればよいですか?

  12. 12

    現在カーネルモードで実行されているすべてのプロセスを取得するにはどうすればよいですか?

  13. 13

    実行中のプロセスの実時間を取得するにはどうすればよいですか?

  14. 14

    コマンドを実行して、その終了コードをより少ない文字で取得するにはどうすればよいですか?

  15. 15

    smemコマンドを実行するときに、サイズがゼロのフィールドなしで出力を出力するようにbashを取得するにはどうすればよいですか?

  16. 16

    終了後、終了する前に、psutil.Popenを使用してプロセスのcpu_timesを実行するにはどうすればよいですか?

  17. 17

    cronログとスクリプト出力の両方を同じファイルに出力するにはどうすればよいですか?

  18. 18

    cssとjsを使用して動的テキストのスケールアップとスライドアップの両方を確実に実行するにはどうすればよいですか?

  19. 19

    ワープ内のすべてのスレッドで条件が同じであることがわかっている場合、CUDAプログラムで条件の両方のブランチを実行しないようにするにはどうすればよいですか?

  20. 20

    プロデューサースレッドとコンシューマースレッドの両方が無限に次々に実行されるようにするにはどうすればよいですか?

  21. 21

    grettyとwarの両方に対して同じリソースフィルタリングを実行するにはどうすればよいですか?

  22. 22

    4.2を作成する前に終了ステータスと$(シェルコマンド)の出力を取得するにはどうすればよいですか?

  23. 23

    WindowsでDockerとAndroid Studio Emulatorの両方を実行するにはどうすればよいですか?

  24. 24

    WindowsでDockerとAndroid Studio Emulatorの両方を実行するにはどうすればよいですか?

  25. 25

    Java内から実行されたプロセスからbashコマンドの終了コードを取得するにはどうすればよいですか?

  26. 26

    コマンドプロンプトからさまざまなパラメータを取得するバックグラウンドプロセスとしてPythonスクリプトを実行するにはどうすればよいですか?

  27. 27

    Python:終了時ではなく、出力するたびにサブプロセスの出力を取得するにはどうすればよいですか?

  28. 28

    Freebsd OSのpsqlコマンドラインでスクリプトを実行しているときに、エラーメッセージとともに出力をファイルに記録するにはどうすればよいですか?

  29. 29

    GoogleスプレッドシートでSUMPRODUCTを実行するにはどうすればよいですか。ただし、両方のベクトルのテキストを条件としますか?

ホットタグ

アーカイブ