Các chương trình X biết phiên X nào mà chúng được cho là nói chuyện bằng cách xem DISPLAY
biến môi trường.
Trước tiên, bạn sẽ cần tìm hiểu những gì DISPLAY
được đặt trong phiên X nơi bạn muốn chương trình của mình chạy. Thực hiện việc này bằng cách phát lệnh echo $DISPLAY
bên trong thiết bị đầu cuối X trong phiên X đó. Thông thường nhận được một cái gì đó như :0.0
là xuất ra.
Hãy nói rằng bạn muốn khởi động chương trình xuất sắc xclock
chương trình trong phiên X của bạn, nơi DISPLAY
là :0.0
, nhưng bạn muốn làm điều này tại giao diện điều khiển. Sau đó, bạn nhấn Alt-Ctrl-F1 để chuyển sang bảng điều khiển đó, rồi gõ:
DISPLAY=:0.0 xclock # variables set w/ a command are local to that command
Sau đó, bạn quay lại X bằng cách nhấn Alt-Ctrl-F7 hoặc Alt-Ctrl-F8 (hoặc có thể một số phím F khác, tùy thuộc vào hương vị Linux của bạn) và xem đồng hồ treo tường đẹp mới mà bạn có ở đó.
Trong thực tế, bạn có thể đã thực thi lệnh trên trong bất kỳ shell nào trên cùng một máy đó (thông qua SSH, trong bất kỳ phiên X nào, trên bất kỳ bảng điều khiển nào, v.v.) - thực tế là bạn đã chỉ định DISPLAY=:0.0
trước lệnh có nghĩa là xclock
cửa sổ sẽ luôn bật lên cùng một phiên X.
Trong thực tế - ngoài thực tế là các chương trình X nhìn vào nó - không có gì đặc biệt về DISPLAY
biến. Thông thường khi bạn bắt đầu các chương trình từ thiết bị đầu cuối X, chúng sẽ bắt đầu ở đúng nơi vì DISPLAY
đã được đặt cho bạn.
Thay vì sử dụng lệnh trên, bạn cũng có thể chia nó thành hai bằng cách cài đặt đầu tiên DISPLAY
, sau đó chạy xclock
. Trong trường hợp này, DISPLAY
cài đặt sẽ duy trì cho đến khi bạn đóng shell đó và tất cả các chương trình X tiếp theo bắt đầu từ đó sẽ mở trong cùng một phiên X như xclock
.
# variables set w/o a command are local to the shell,
export DISPLAY=:0.0 # unless exported
xclock