次のページ
前のページ
目次へ
クライアントプログラム (例としてグラフィックアプリケーション) は
DISPLAY 環境変数を調べて接続するディスプレイを知ります。しかし、
クライアント起動時のコマンドライン引数に -display hostname:0
を与えた場合は、
この設定を優先します。いくつかの例で明らかにしましょう。
私たちのコンピュータは外部からホスト名 light として見えており、
ドメイン uni.verse に所属しているとします。
普通に X サーバを実行しているなら、ディスプレイは
light.uni.verse:0 として識別されます。
dark.matt.er というリモートコンピュータで描画プログラムの xfig を実行し、
ローカルマシン light に xfig の出力を表示させたいと思います。
すでにリモートコンピュータ dark.matt.er に telnet していると想定します。
リモートコンピュータで csh を使っているなら
dark% setenv DISPLAY light.uni.verse:0
dark% xfig &
とするか、あるいは
dark% xfig -display light.uni.verse:0 &
とします。
リモートコンピュータで sh を使っているなら
dark$ DISPLAY=light.uni.verse:0
dark$ export DISPLAY
dark$ xfig &
とするか、あるいは
dark$ DISPLAY=light.uni.verse:0 xfig &
とします。もちろん
dark$ xfig -display light.uni.verse:0 &
でもいいです。
(訳注;
dark$ env DISPLAY=light.uni.verse:0 xfig&
なら csh でも sh でも使えますね :) )
telnet の種類によっては、自動的にリモートホストへ DISPLAY 変数を
転送するものもあるようです。そんな telnet を使用するなら、
ディスプレイの指定を手動で行なわなくてもよいので、幸運でしょう。
telnet の殆どは TERM 環境変数を転送する種類なので
賢くやるなら、TERM 環境変数に DISPLAY 変数の内容を代入して
代用させることです。
代用するのと同様の考え方で、次のような数行のスクリプトで実現できます。
telnet する前に、TERM に DISPLAY の値を加える。telnet する。
リモートコンピュータの適切な .*shrc ファイルで、TERM から
DISPLAY の値を読む。
次のページ
前のページ
目次へ
|