1

次のスクリプトがあります。スクリプトとして実行すると機能しませんが、まったく同じコマンドを端末に入力すると機能します。

#! /bin/sh

cd ~/Desktop/Example/

javac Generator.java

エラーメッセージは次のとおりです。

my_script.sh 3:my_script.sh:javac:見つかりません

上記のスクリプトの名前はmy_script.shで、ターミナルから次のコマンドを使用して実行します。

sh my_script.sh

私がする時

エコー$SHELL

ターミナルで私は得る:

/ bin / bash

4

3 に答える 3

1

パスにjmlcを追加し、スクリプトを再実行します。

確認するには:新しいシェルを開き、「jmc」と入力します。

スクリプトを機能させるもう1つの方法は、スクリプトでフルパスを指定することです。'jmlc'を'/full_path_here/jmlc'に置き換えます。

また、jmlcスクリプトの他のコマンドもパスで使用できることを確認してください。

于 2012-08-18T22:01:50.250 に答える
1

jmlcPATHをエクスポートして利用可能にすることもできます。

#! /bin/sh

export jmlc_bin=FULL_PATH_TO_JMLC

cd ~/Desktop/Example/

$jmlc_bin Generator.java
于 2012-08-18T23:25:29.947 に答える
0

1行のコマンドが機能していたディレクトリに移動し、そのディレクトリにスクリプトを保存します。

その後、実行します

./my_script.sh
于 2012-08-18T21:59:11.727 に答える