답변:
X 프로그램은 DISPLAY
환경 변수를 보고 어떤 X 세션과 통신해야하는지 알고 있습니다.
먼저 DISPLAY
프로그램을 실행하려는 X 세션에서 설정 한 내용을 찾아야 합니다. echo $DISPLAY
해당 X 세션에서 X- 터미널 내부 에서 명령을 실행하여이를 수행하십시오 . 일반적으로 :0.0
출력되는 것과 같은 것을 얻습니다 .
is xclock
의 X 세션에서 우수한 프로그램 프로그램 을 시작하고 싶지만 콘솔에서이를 수행하려고한다고 가정 해 봅시다. 그런 다음 Alt-Ctrl-F1을 눌러 해당 콘솔로 이동 한 후 다음을 입력하십시오.DISPLAY
:0.0
DISPLAY=:0.0 xclock # variables set w/ a command are local to that command
그런 다음 Alt-Ctrl-F7 또는 Alt-Ctrl-F8 (또는 Linux 특징에 따라 다른 F 키)을 눌러 X로 돌아가서 거기에있는 새로운 예쁜 벽시계를보십시오.
사실 동일한 컴퓨터의 모든 쉘 에서 (SSH, X 세션, 콘솔 등) 위 DISPLAY=:0.0
의 명령 을 실행할 수 있습니다 . 명령 전에 지정한 사실 xclock
은 항상 창이 나타납니다. 동일한 X 세션.
실제로 – X 프로그램이 그것을 보는 사실과는 별도로, DISPLAY
변수 에는 특별한 것이 없습니다 . 일반적으로 X 터미널에서 프로그램을 시작할 때는 DISPLAY
이미 설정되어 있기 때문에 올바른 위치에서 시작 합니다.
위의 명령을 사용하는 대신 먼저 설정 DISPLAY
하고 실행 하여 명령을 두 개로 나눌 수도 있습니다 xclock
. 이 경우 DISPLAY
해당 쉘을 닫을 때까지 설정이 유지되며 여기에서 시작된 모든 후속 X 프로그램은와 동일한 X 세션에서 열립니다 xclock
.
# variables set w/o a command are local to the shell,
export DISPLAY=:0.0 # unless exported
xclock
DISPLAY
이 쉘 (이 모두 작동에 의해 수입되기 때문에, 기본적으로 내보내기로 설정됩니다 zsh
및 dash
사용하지 않고 나를 위해 export
). 당신이 직장에 2 개 개의 라인 버전을 얻을 수없는 경우에, 네, 교체 시도 DISPLAY=:0.0
와 함께 export DISPLAY=:0.0
.