1

コマンドが実行されたときに実行可能ファイルが実行のためにLinuxによって検索される順序は何ですか。私は以下を持っています:

  1. / bin / play
  2. / home / prabhat / playframework / play

上記の両方のファイルがパスにあります。

以下のようにホームディレクトリから実行すると

prabhat@localhost~/home/prabhat/$ play

/ bin/playが実行されます。

Linuxが実行するファイルを検索する順序は何ですか。それを変更する方法はありますか?

4

2 に答える 2

7

順序は、PATH変数のエントリ順序によって定義されます。

シェルがこの情報をキャッシュする可能性があり、PATHを変更するときに、このキャッシュを更新する必要がある場合があることに注意してください。これbashhashコマンドによって行われます。詳細については、こちらをご覧ください。

hashコマンドは、使用されたコマンドのパス名を持つハッシュテーブルを維持します。コマンドを実行すると、変数$PATHでコマンドが検索されます。ただし、コマンドがハッシュテーブルで使用可能な場合は、そこから取得して実行します。

于 2012-10-26T14:26:49.173 に答える
1

パスの/binの前に/home/ prabhat /playframework/を移動する必要があります。.bashrcまたは.bash_profileでこれを実行できるはずです

次のようなもの:

export PATH=/home/prabhat/playframework/play:$PATH

お役に立てれば

于 2012-10-26T14:28:24.237 に答える