Program X tahu sesi X mana yang seharusnya mereka ajak bicara dengan melihat DISPLAYvariabel lingkungan.
Pertama, Anda perlu mencari tahu apa DISPLAYyang diatur dalam sesi X di mana Anda ingin program Anda dijalankan. Lakukan ini dengan mengeluarkan perintah echo $DISPLAYdi dalam terminal-X dalam sesi X itu. Biasanya mendapatkan sesuatu seperti :0.0yang dikeluarkan.
Katakanlah Anda ingin memulai program baik xclockprogram sesi X Anda di mana DISPLAYadalah :0.0, tetapi Anda ingin melakukan hal ini di konsol. Anda kemudian tekan Alt-Ctrl-F1 untuk beralih ke konsol itu, dan kemudian ketik:
DISPLAY=:0.0 xclock # variables set w/ a command are local to that command
Kemudian Anda kembali ke X dengan menekan Alt-Ctrl-F7 atau Alt-Ctrl-F8 (atau mungkin beberapa tombol F lainnya, tergantung pada rasa Linux Anda) dan menonton wallclock cantik baru yang Anda miliki di sana.
Sebenarnya Anda bisa mengeksekusi perintah di atas dalam shell apa pun pada mesin yang sama (melalui SSH, dalam sesi X apa pun, pada konsol apa pun, dll.) - fakta bahwa Anda menentukan DISPLAY=:0.0sebelum perintah berarti bahwa xclockjendela akan selalu muncul di sesi X yang sama.
Bahkan - terlepas dari kenyataan bahwa program X melihatnya - tidak ada yang istimewa tentang DISPLAYvariabel. Biasanya ketika Anda memulai program dari terminal X, mereka memulai di tempat yang tepat karena DISPLAYtelah ditetapkan untuk Anda.
Alih-alih menggunakan perintah di atas, Anda juga dapat membaginya menjadi dua dengan pengaturan pertama DISPLAY, dan kemudian menjalankan xclock. Dalam hal ini DISPLAYpengaturan akan bertahan sampai Anda menutup shell itu, dan semua program X berikutnya dimulai dari sana akan terbuka di sesi X yang sama dengan xclock.
# variables set w/o a command are local to the shell,
export DISPLAY=:0.0 # unless exported
xclock