NetBeansの端末を見分けるBashコード

タグ: Linux   NetBeans  

通常の端末とNetBeansの端末とで、設定や動作を変更したい場合があります。

もちろんBashを使用している場合ですが、.bashrcや.bash_loginなどの起動スクリプトに記述し、設定を分けることが可能です。

だいぶ前から、どう見分けたらよいのか時々考えていました。本日、真面目に調べ、やっとできました。

外部ライブラリーパスを指定するための環境変数、LD_LIBRARY_PATHがLinuxには存在しています。Macの場合は、DYLD_LIBRARY_PATHになるそうです。

NetBeansの端末では、起動時にこの2つの変数を空文字列として設定しています。(存在しているが、空文字列です。)

LD_LIBRARY_PATH=
DYLD_LIBRARY_PATH=

通常、Linux環境ではDYLD_...を使いませんし、Mac環境ではLD_...を使いません。ですから、使わない方の環境変数の存在をチェックすれば、判定できます。

Linux環境であれば、以下のBashスクリプトをNetBeansの端末内で実行すれば、メッセージが表示されます。通常の端末で実行しても、メッセージは表示されません。

if [ -v DYLD_LIBRARY_PATH ]; then echo ; echo NetBeansの端末だよ; fi

Macの場合は、DYLD_の代わりにLD_を使用してください。