バックグラウンドでシェルコマンドを実行し、Pythonを使用してstdoutをログファイルにパイプします

xetra11

.warPython経由で起動したいファイルがあります。ターミナルにログメッセージが表示されないように、バックグラウンドで実行したいと思います。また、実際のログ出力をログファイルに入れたいと思います。これは私がこれを解決するために使用するPythonコードです。

まだ運がなかった。プロセスがされていない私は、スクリプトを実行した後、他のシェルコマンドを実行することはできませんので、デタッチ。ログファイルは作成されますがログ出力は追加されません

編集:物事をより明確にするため。このスクリプトを拡張して、最終的に複数のJavaプロセスを実行したいと思います。したがって、このpythonスクリプトは、これらのJavaプロセスを生成し、最終的には終了するはずです。stdoutをファイルにリダイレクトする機能を含めて、それを正確に実現するにはどうすればよいですか?

#!/usr/bin/env python3
import subprocess
import re

platformDir = "./platform/"

fe = "frontend-webapp-0.5.0.war"
logfile = open("frontend-log", 'w')

process = subprocess.Popen(['java', '-jar', platformDir + fe], 
stdout=subprocess.PIPE)

for line in process.stdout:
        logFile.write(line)
xetra11

実際には、stdoutにstdout=logFile。のようなファイルハンドルを指定するだけで済みましたstdoutを介したforループを使用したソリューションでは、常にPythonスクリプトプロセスにとどまります。

import sys
from subprocess import Popen, PIPE, STDOUT

platformDir = "./platform/"

fe = "frontend-webapp-0.5.0.war"

logfile = open("frontend-log", 'ab')

p = Popen(['java', '-jar', platformDir + fe], stdout=logfile, stderr=STDOUT, bufsize=1)

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

コマンドラインをバックグラウンドプロセスとして使用してPHPファイルを実行する

分類Dev

バックグラウンドでコマンドを実行すると、シェルスクリプトでファイルに書き込めません

分類Dev

バックグラウンドでコマンドを実行すると、シェルスクリプトでファイルに書き込めません

分類Dev

バッチファイルにドラッグアンドドロップしてコマンドを実行します

分類Dev

パラメータ/オプションを使用してバックグラウンドでファイルを実行する

分類Dev

コマンドをバックグラウンドでサービスとして使用してファイルを実行する

分類Dev

C ++プログラムをコンパイルしてバックグラウンドで実行し、タスクバーに表示する

分類Dev

C ++プログラムコンパイラは、g ++コマンドでコンパイルした後、exeファイルを自動的に実行します。

分類Dev

出力をログファイルにリダイレクトし、同時にプロセスをバックグラウンドで実行できますか?

分類Dev

C ++でコンパイルされたプログラムをバックグラウンドで実行し、必要に応じて入力を送信する

分類Dev

コマンドプロンプトを引き続き使用しながら、コマンドプロンプトのバックグラウンドでバッチファイルを実行する

分類Dev

シングルスレッドプログラムを使用する代わりに、マルチスレッドプログラムと並行してプロジェクトをコンパイルすることでパフォーマンス上の利点はありますか?

分類Dev

実行中にバックグラウンドコマンド出力(stdout)をファイルに書き込む

分類Dev

バックグラウンドプロセスとして実行される方法で、Pythonスクリプトを「exe」ファイルに「コンパイル」する方法は?

分類Dev

バックグラウンドプロセスとしてサーバー上でjavajarファイルを実行します

分類Dev

バックグラウンドプロセスとして実行されているPythonスクリプトをファイルに出力する

分類Dev

バックグラウンドジョブのstdout / stderrをコンソールからログファイルにリダイレクトしますか?

分類Dev

プログラム/マクロを実行して名前を変更し、フラッシュドライブにファイルを追加します

分類Dev

Linuxシェルコマンドを「&」を使用してバックグラウンドで実行すると常に失敗する

分類Dev

Pythonを使用して、Windowsコマンドプロンプトで.exeファイルを実行します

分類Dev

RaspberryPiのバックグラウンドで実行されるPythonスクリプトを使用してテキストファイルを作成する

分類Dev

ログインシェルでパラメータとしてコマンドを実行する

分類Dev

Bash:実行可能ファイルをバックグラウンドで実行します

分類Dev

ファイル名に依存するフラグ引数を使用して、すべてのファイルでコマンドを実行します

分類Dev

xshellでscreenコマンドを使用してバックグラウンドプロセスを実行する

分類Dev

xshellでscreenコマンドを使用してバックグラウンドプロセスを実行する

分類Dev

これは、プロセスをバックグラウンドで実行し、出力をnohupファイルに出力する正しい方法ですか?

分類Dev

これは、プロセスをバックグラウンドで実行し、出力をnohupファイルに出力する正しい方法ですか?

分類Dev

コマンドプロンプトでJavaプログラムをコンパイルして実行する

Related 関連記事

  1. 1

    コマンドラインをバックグラウンドプロセスとして使用してPHPファイルを実行する

  2. 2

    バックグラウンドでコマンドを実行すると、シェルスクリプトでファイルに書き込めません

  3. 3

    バックグラウンドでコマンドを実行すると、シェルスクリプトでファイルに書き込めません

  4. 4

    バッチファイルにドラッグアンドドロップしてコマンドを実行します

  5. 5

    パラメータ/オプションを使用してバックグラウンドでファイルを実行する

  6. 6

    コマンドをバックグラウンドでサービスとして使用してファイルを実行する

  7. 7

    C ++プログラムをコンパイルしてバックグラウンドで実行し、タスクバーに表示する

  8. 8

    C ++プログラムコンパイラは、g ++コマンドでコンパイルした後、exeファイルを自動的に実行します。

  9. 9

    出力をログファイルにリダイレクトし、同時にプロセスをバックグラウンドで実行できますか?

  10. 10

    C ++でコンパイルされたプログラムをバックグラウンドで実行し、必要に応じて入力を送信する

  11. 11

    コマンドプロンプトを引き続き使用しながら、コマンドプロンプトのバックグラウンドでバッチファイルを実行する

  12. 12

    シングルスレッドプログラムを使用する代わりに、マルチスレッドプログラムと並行してプロジェクトをコンパイルすることでパフォーマンス上の利点はありますか?

  13. 13

    実行中にバックグラウンドコマンド出力(stdout)をファイルに書き込む

  14. 14

    バックグラウンドプロセスとして実行される方法で、Pythonスクリプトを「exe」ファイルに「コンパイル」する方法は?

  15. 15

    バックグラウンドプロセスとしてサーバー上でjavajarファイルを実行します

  16. 16

    バックグラウンドプロセスとして実行されているPythonスクリプトをファイルに出力する

  17. 17

    バックグラウンドジョブのstdout / stderrをコンソールからログファイルにリダイレクトしますか?

  18. 18

    プログラム/マクロを実行して名前を変更し、フラッシュドライブにファイルを追加します

  19. 19

    Linuxシェルコマンドを「&」を使用してバックグラウンドで実行すると常に失敗する

  20. 20

    Pythonを使用して、Windowsコマンドプロンプトで.exeファイルを実行します

  21. 21

    RaspberryPiのバックグラウンドで実行されるPythonスクリプトを使用してテキストファイルを作成する

  22. 22

    ログインシェルでパラメータとしてコマンドを実行する

  23. 23

    Bash:実行可能ファイルをバックグラウンドで実行します

  24. 24

    ファイル名に依存するフラグ引数を使用して、すべてのファイルでコマンドを実行します

  25. 25

    xshellでscreenコマンドを使用してバックグラウンドプロセスを実行する

  26. 26

    xshellでscreenコマンドを使用してバックグラウンドプロセスを実行する

  27. 27

    これは、プロセスをバックグラウンドで実行し、出力をnohupファイルに出力する正しい方法ですか?

  28. 28

    これは、プロセスをバックグラウンドで実行し、出力をnohupファイルに出力する正しい方法ですか?

  29. 29

    コマンドプロンプトでJavaプログラムをコンパイルして実行する

ホットタグ

アーカイブ