
私の質問はこれです。
簡単なコマンドでコマンドラインから実行できるようにしたい jar ファイルがあります。そこで、~/.bashrc
ファイル内に次のようなエイリアスを作成しました。
alias selenium='java -jar selenium-server-standalone-2.31.0.jar'
jar ファイルはここにあります:/usr/local/bin
そして、私は/usr/local/bin
パス変数にこれを持っています。私の理解では、パス変数にあるのでどこからでも実行できるのですが、ターミナルを開いて次のように入力すると、
selenium
私はこれを理解します:
エラー: jarfile selenium-server-standalone-2.31.0.jar にアクセスできません
エイリアスは機能していますが、ファイルにアクセスできません。ディレクトリを変更してもう一度/usr/local/bin
入力するとselenium
機能します
これをどこからでも実行できない理由はありますか?
また、フォルダーの目的は何ですか/usr/local/bin
。これは実行したいプログラムを置く場所ですか?
ありがとう
答え1
.jar ファイル自体を実行していません。代わりに、java を実行し、jar ファイルの名前をパラメータとして渡します。ファイル名のみを渡し、フル パスを渡さない場合、システムはファイルが現在のディレクトリにあると想定し、そうでない場合は、前述のエラーが発生します。-jar フラグの後にフル パスを渡すと、どのディレクトリからでもエイリアスを実行できます。