Запустите программу для запуска на определенном дисплее
- У меня есть два дисплея на моем компьютере, скажем
Display1&Display2, Display2настроен как расширениеDisplay1,- Быть на
Display1Я хочу запустить (из эмулятора терминала), приложение сказатьxcalc, который должен появиться наDisplay2,
Возможно ли это как-то?
2 ответа
Некоторые программы достаточно умны, чтобы запомнить последнюю позицию окна.
Многие программы, написанные для X Window System, принимают
-geometryвариант; например,xcalc -geometry +500+750начнетxcalcпоместив окно на 500 пикселей вправо и 750 пикселей вниз от логического верхнего левого угла (который равен +0+0). Другие программы называют эту опцию--geometry(обратите внимание на два дефиса). Прочитайте документацию конкретной программы.Другим вариантом является установка
wmctrl(sudo apt-get install wmctrl).wmctrl(Управление оконным менеджером) позволяет отправлять запросы в оконный менеджер для выполнения определенных действий, таких как изменение размера или перемещение окон. Затем вы можете написать небольшой скрипт, который запускает программу, а затем использует wmctrl, чтобы переместить ее туда, где вы хотите, чтобы она появилась.
«Сначала вам нужно выяснить, какое значение DISPLAY установлено в X-сеансе, где вы хотите, чтобы ваша программа запускалась. Сделайте это, введя команду echo $DISPLAY внутри X-терминала в этом X-сеансе. Обычно получается что-то вроде: выводится 0.0.
Допустим, вы хотите запустить превосходную программу xclock в вашем X-сеансе, где DISPLAY равно:0.0, но вы хотите сделать это на консоли. Затем вы нажимаете Alt-Ctrl-F1, чтобы перейти к этой консоли, а затем набираете:
DISPLAY=:0.0 xclock # переменные, установленные командой, являются локальными для этой команды."