Можно ли выбрать, на каком X будет отображаться экземпляр программы?

Если в системе работает несколько X Windows, возможно ли запустить программу для определенного окна? Как бы вы определили окно и запустили программу?

Я предполагаю, что у меня есть все разрешения, необходимые для запуска такой программы.

2 Solutions collect form web for “Можно ли выбрать, на каком X будет отображаться экземпляр программы?”

X-программы знают, с какой X-сессией они должны разговаривать, глядя на переменную среды DISPLAY .

Сначала вам нужно узнать, в каком режиме DISPLAY установлен в X-сеансе, где вы хотите, чтобы ваша программа запускалась. Сделайте это, выпустив команду echo $DISPLAY внутри X-терминала в этом X сеансе. Как правило, получается что-то вроде :0.0 выводится.

Допустим, вы хотите запустить отличную программу xclock в своей X-сессии, где DISPLAY :0.0 , но вы хотите сделать это на консоли. Затем нажмите Alt-Ctrl-F1, чтобы перейти на эту консоль, а затем введите:

 DISPLAY=:0.0 xclock # variables set w/ a command are local to that command 

Затем вы возвращаетесь к X, нажимая Alt-Ctrl-F7 или Alt-Ctrl-F8 (или, возможно, какую-то другую клавишу F, в зависимости от вашего вкуса в Linux) и наблюдайте за новым красивым ударным стеклом, который у вас там есть.

Фактически вы могли бы выполнить приведенную выше команду в любой оболочке на том же компьютере (через SSH, в любом сеансе X, на любой консоли и т. Д.) – тот факт, что вы указали DISPLAY=:0.0 перед командой, означает, что окно xclock всегда будет отображаться в том же X-сеансе.

Фактически – кроме того, что X-программы смотрят на него – нет ничего особенного в переменной DISPLAY . Обычно, когда вы запускаете программы с X-терминала, они запускаются в нужном месте, потому что DISPLAY уже установлен для вас.

Вместо использования вышеуказанной команды вы также можете разбить ее на две части, сначала установив DISPLAY , а затем запустив xclock . В этом случае параметр DISPLAY будет сохраняться до тех пор, пока вы не закроете эту оболочку, и все последующие запущенные там X-программы откроются в том же X-сеансе, что и xclock .

  # variables set w/oa command are local to the shell, export DISPLAY=:0.0 # unless exported xclock 

Обычно, клиентские программы X используют переменную среды DISPLAY чтобы узнать, к какому X-серверу нужно подключиться. Некоторые программы также принимают параметр командной строки ( -display или что-то подобное), которое может использоваться для переопределения переменной среды DISPLAY .

  • Измените состояние светодиодов клавиатуры, начиная с X сеанса, без доступа root
  • Как использовать все кнопки MMC Gaming Mouse от SteelSeries Cataclysm в Xorg (GNOME)?
  • Загрузите графическое приложение прямо из загрузки Linux (без подробных загрузочных сообщений и рабочего стола)
  • Как отслеживать, почему клавиши быстрого доступа X11 не работают?
  • Могу ли я поместить несколько окон X в одно большее окно?
  • Переопределите несколько кодов клавиш с XKB
  • Установка XV на windows с использованием cygwin
  • Как перебрать номера отображения в .xprofile?
  • Для чего нужен «.xsession»?
  • Мой ~ / .Xresources отключает антиалиасинг gtk
  • Попросите определенные ключи пройти через lockscreen
  • Linux и Unix - лучшая ОС в мире.