次のコマンドを使用している場合
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)
回答
setenv
は(t)csh
、CentOSのデフォルトシェルであるbash
ではありません。代わりに
export CLASSPATH="/path/mysql-connector-java-ver-bin.jar:$CLASSPATH"
を使用してください。
回答
偶数よりクリーンなため、呼び出すコマンドにプレフィックス表記(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
呼び出し後のクリーンアップ目的の一時変数