bash setenvコマンドが見つかりません


10

次のコマンドを使用しているとき

         setenv CLASSPATH /path/mysql-connector-java-ver-bin.jar:$CLASSPATH

エラーは

        bash setenv command is not found

どのコマンドでsetenvのパスを見つけたら、次のパスを見つけました

 (/usr/kerberos/sbin:/usr/kerberos/bin:/home/ec2/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/home/ec2/bin:/root/bin)

回答:


15

setenvCentOSのデフォルトのシェルでは(t)cshなく、に属してbashいます。使用する

export CLASSPATH="/path/mysql-connector-java-ver-bin.jar:$CLASSPATH"

代わりに。


3

よりクリーンなため、set呼び出したいコマンドでプレフィックス表記(なし)を使用するのでさらに便利です。

CLASSPATH=/path/mysql-connector-java-ver-bin.jar:$CLASSPATH ANOTHER_VAR=bla ATHIRD_VAR=blu java -...

これで、java呼び出すプロセスが一時的な環境変数とを収集できるようにCLASSPATH, ANOTHER_VARなりATHIRD_VARます。

を使用した場合export、変数は少なくともスクリプトの環境でグローバルに設定されます(?)。また、既存の変数の値は新しい値で上書きされます。

接頭表記の利点:

  • 変数の以前の値は変更されないままである必要があります。つまり、後で古い値が必要になる場合、呼び出し後にそれらを復元するためにすでに存在する変数の古い値を保存する必要はありません。
  • unset呼び出し後のクリーンアップのために一時変数を使用する必要はありません
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.