Запуск программы из другой консоли

 
0
 
C++
ava
9STREB | 29.11.2016, 21:28
Здравствуйте, подскажите пожалуйста, каким образом можно запустить из программы (которая запущена из-под консоли 1) запустить программу (или bash скрипт) в другой консоли (консоль 2)?
Kommentare (8)
ava
xvr | 29.11.2016, 22:11 #
Функция CreateProcess, параметр dwCreationFlags, флаг CREATE_NEW_CONSOLE
 
ava
Olej | 30.11.2016, 14:48 #
Цитата (xvr @ 29.11.2016,  22:11)
Функция CreateProcess, параметр dwCreationFlags, флаг CREATE_NEW_CONSOLE

CreateProcess в разделе форума "C/C++: Программирование под Unix/Linux"?
Пикантно... :good
Пикантно... :dash1 
ava
xvr | 30.11.2016, 14:55 #
Пардон, не обратил внимания на раздел.

В linux'е придется запускать другую консоль (ибо в нем нет встроенных в систему консолей, а есть внешние программы) с вашей программой.

Например так: system("xterm -e <script> <arguments>... &")
ava
9STREB | 30.11.2016, 16:28 #
под консолью я подразумевал, виртуальный терминал (например который открывается  ctrl+alt+Fn) 
ava
Olej | 30.11.2016, 18:52 #
Цитата (9STREB @ 29.11.2016,  21:28)
Здравствуйте, подскажите пожалуйста, каким образом можно запустить из программы (которая запущена из-под консоли 1) запустить программу (или bash скрипт) в другой консоли (консоль 2)?

См. в сторону "псевдотерминал", man 4 pts, pts (4)

Откройте новый терминал (или в консоли):

$ tty
/dev/pts/19

Из другого терминала/консоли:

$ ls -l > /dev/pts/19

И будет вам счастье. :dance3 
ava
9STREB | 30.11.2016, 21:32 #
Цитата (Olej @ 30.11.2016,  18:52)
Цитата (9STREB @ 29.11.2016,  21:28)
Здравствуйте, подскажите пожалуйста, каким образом можно запустить из программы (которая запущена из-под консоли 1) запустить программу (или bash скрипт) в другой консоли (консоль 2)?


См. в сторону "псевдотерминал", man 4 pts, pts (4)



Откройте новый терминал (или в консоли):



$ tty

/dev/pts/19



Из другого терминала/консоли:



$ ls -l > /dev/pts/19



И будет вам счастье. :dance3

Это получается перенаправление вывода, а мне надо например так:
во 2 консоле я зашел в cd test например
а в 1 когда нарпимер пишу ~$ ls -l >dev/tty2 он отобразил не директорию ~ а то что находится в ~/test
ava
Olej | 30.11.2016, 22:44 #
[QUOTE=9STREB,30.11.2016,  21:32][QUOTE=Olej,30.11.2016,  18:52]
Цитата (9STREB @ 29.11.2016,  21:28)


Это получается перенаправление вывода, а мне надо

Это не получается перенаправление вывода.
А в том, что вам надо, разбирайтесь дальше сами... с /dev/pts/
ava
Olej | 22.12.2016, 18:05 #
[QUOTE=9STREB,30.11.2016,  21:32][QUOTE=Olej,30.11.2016,  18:52][QUOTE=9STREB,29.11.2016,  
Это получается перенаправление вывода, а мне надо например так:
во 2 консоле я зашел в cd test например
а в 1 когда нарпимер пишу ~$ ls -l >dev/tty2 он отобразил не директорию ~ а то что находится в ~/test[/QUOTE]
Такого быть не может!
У вас может быть открыто до 64 виртуальных терминалов /dev/tty0 - /dev/tty63, но каждый из них - это независимая терминальная сессия, и у каждой из них установлен свой текущий рабочий каталог.  
Registrieren Sie sich oder melden Sie sich an, um schreiben zu können.
Unternehmen des Tages
Вы также можете добавить свою фирму в каталог IT-фирм, и публиковать статьи, новости, вакансии и другую информацию от имени фирмы.
Подробнее
Mitwirkende
  xvr   9STREB   Olej
advanced
Absenden