Я пересылаю команду с одного терминала на другой. На данный момент я делаю следующее

Я создаю новый терминал

gnome-terminal

Я получаю его TTY через

w

затем я могу переслать ему команды через скрипт на python (находится здесь: https://stackoverflow.com/questions/10376251/linux-write-commands-from-one-terminal-to-another)

#!/usr/bin/python
import sys,os,fcntl,termios
if len(sys.argv) != 3:
   sys.stderr.write("usage: ttyexec.py tty command\n")
   sys.exit(1)
fd = os.open("/dev/" + sys.argv[1], os.O_RDWR)
cmd=sys.argv[2]
for i in range(len(cmd)):
   fcntl.ioctl(fd, termios.TIOCSTI, cmd[i])
fcntl.ioctl(fd, termios.TIOCSTI, '\n')
os.close(fd)

это работает хорошо, за исключением того, что мне нужно вручную получить tty нового окна, что не очень хорошо для инкапсуляции этого в больший скрипт. Есть ли способ для скрипта получить tty терминала gnome, который он открывает?

Мое решение сейчас заключается в том, чтобы скрипт вызывал "w" до и после вызова «gnome-терминал», чтобы определить, какой терминал только что был открыт, но он подвержен ошибкам.

0