実行可能ファイルが存在するがスクリプトが見つからないと表示されます。

実行可能ファイルが存在するがスクリプトが見つからないと表示されます。

JVMのローカルバージョンが利用可能かどうかをテストするために、次の小さなスクリプトがあります。

#!/bin/sh
$JAVA_HOME/bin/java -version

次のように失敗します。

./test.sh: 2: ./test.sh: ~/bin/jdk1.8.0_72/bin/java: not found

ただし、コマンドラインに直接コマンドを入力すると機能します。

user@computer $ ~/bin/jdk1.8.0_72/bin/java -version
java version "1.8.0_72"
Java(TM) SE Runtime Environment (build 1.8.0_72-b15)
Java HotSpot(TM) Server VM (build 25.72-b15, mixed mode)

どんなアイデアがありますか?

答え1

シェルに拡張記号〜(ホームディレクトリ)がないため、エラーが発生します。フルパスをバイナリファイルにエクスポートします。

関連情報