Python 스크립트: tmux 세션의 작업이 완료될 때까지 기다립니다.

Python 스크립트: tmux 세션의 작업이 완료될 때까지 기다립니다.

각 실행이 자체 tmux 세션에 있는 다른 Python 스크립트의 임의 인수를 사용하여 Python 스크립트를 지속적으로 실행하려고 합니다. 내가하려는 작업에 대한 매우 간단한 개요는 다음과 같습니다.

# Python script to run other python scripts
from subprocess import call
import random

while True
    param = randint(1,100)
    runmyscript ="tmux send-keys -t mysession"+str(param)+" 'python myscript.py param' "
    call(runmyscript)
    #Wait until myscript.py is done running in its tmux session <-- How to do that?

예를 들어 난수가 57, 61, 88...등이라고 가정합니다. 위 스크립트는 다음과 같이 실행되어야 합니다.

  • "mysession57"이라는 tmux 세션의 "myscript.py 57"
  • "mysession61"이라는 tmux 세션의 "myscript.py 61"
  • "mysession88"이라는 tmux 세션의 "myscript.py 88"... 등.

하지만 스크립트가 tmux 세션의 모든 스크립트가 완료될 때까지 기다리는지 어떻게 확인합니까?

답변1

from subprocess import call
import random

while True:
    param = random.randint(1,100) #add random first or from random import randint
    runmyscript ="tmux send-keys -t mysession %s 'python myscript.py param' "%str(parma)
    call(runmyscript,shell=True)#you should add if or something to break loop

관련 정보