0

環境変数 JAVA_HOME、CATALINA_HOME、PATH などを設定する必要があります。これらを共有ファイル ~/.setenv に設定し、~/.profile で呼び出すのは良い考えだと思いました。

... code ...

/home/myusername/.setenv

ログインすると、エコーが JAVA_HOME 変数を出力し、正しく設定されていることがわかりますが、echo $JAVA_HOME を手動で実行すると、何も出力されません。

.setenv スクリプトが変数を設定しないのはなぜですか?

ここに私の .setenv ファイルがあります:

export JAVA_HOME=/usr/local/jdk1.6.0_45
export PATH=$PATH:$JAVA_HOME/bin
export CATALINA_HOME=/var/lib/apache-tomcat-6.0.37
export CATALINA_BASE=/var/lib/apache-tomcat-6.0.37

whoami

echo "JAVA_HOME set to $JAVA_HOME"
echo "CATALINA_HOME set to $CATALINA_HOME"
echo "You can change this in /home/myusername/.setenv"

ログイン時の出力:

Welcome to Ubuntu 13.04 (GNU/Linux 3.8.0-19-generic x86_64)

 * Documentation:  https://help.ubuntu.com/

Last login: Thu Jun 13 16:11:21 2013 from 192.168.1.200
o#: command not found
myusername
JAVA_HOME set to /usr/local/jdk1.6.0_45
CATALINA_HOME set to /var/lib/apache-tomcat-6.0.37
You can change this in /home/myusername/.setenv
4

1 に答える 1

2

サブシェルではなく現在のシェルで変数の割り当てが行われるように、スクリプトをソースする必要があります。.setenvサブシェルで変数を割り当てても、親シェルには影響しません。

. /home/myusername/.setenv
于 2013-06-13T22:23:22.990 に答える