По сути, мне нужно создать функцию, которая открывает новый терминал, выполняет на нем скрипт python и после этого ожидает его завершения. Из того, что я читал в Интернете, лучший способ сделать это - использовать подпроцесс библиотеки Python. Тем не менее, я нашел его очень сложным в использовании. Когда я запускаю следующий код:
def function():
cmd = "gnome-terminal; python3 simple_action_client.py"
subprocess.check_output(cmd, shell=True)
print("I'm done!")
Печать выполняется после открытия терминала, что означает, что функция «check_output» ожидает только выполнения первой части cmd.
По сути, я хотел бы сделать следующее:
def function():
terminal_command = "gnome-terminal"
script_command = "python3 script.py"
subprocess.run(terminal_command, shell = True)
subprocess.check_output(script_command, shell = True)
print("I'm done!")
Но когда я делаю что-то подобное, скрипт не запускается на новом терминале, и я хочу, чтобы он беги туда.
Возможно ли это сделать? Спасибо вам за помощь!