![私の$ PATHの最初の実行可能ファイルが使用されていないのはなぜですか? [コピー]](https://linux33.com/image/49908/%E7%A7%81%E3%81%AE%24%20PATH%E3%81%AE%E6%9C%80%E5%88%9D%E3%81%AE%E5%AE%9F%E8%A1%8C%E5%8F%AF%E8%83%BD%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%8C%E4%BD%BF%E7%94%A8%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%81%AA%E3%81%84%E3%81%AE%E3%81%AF%E3%81%AA%E3%81%9C%E3%81%A7%E3%81%99%E3%81%8B%EF%BC%9F%20%5B%E3%82%B3%E3%83%94%E3%83%BC%5D.png)
というjsl
スクリプトがあります/usr/local/bin
。ランニングはwhich jsl
そこにそれを発見した。
パスでより早いバージョンをecho $PATH
見ると、一時的に別のバージョンを使用したいと思います。/usr/bin
そのため、そのフォルダから呼び出されるスクリプトを追加し、フルパスで呼び出すときにjsl
実行可能で正しく実行されることを確認しました。
しかし、which jsl
最初のバージョンはまだ発見され、jsl
まだ実行されています。
私の新しい男がjsl
名前で発見または処刑されないのはなぜですか?which
答え1
シェルがコマンドの場所をキャッシュしている可能性があります。たとえば、zshにはこれを実行してrehash
キャッシュを消去するコマンドがあります。