Bashの実行可能ファイルパスキャッシュを消去する方法は?

Bashの実行可能ファイルパスキャッシュを消去する方法は?

実行可能ファイルへのフルパスを指定せずにプログラムを実行すると、$PATHBashはバイナリを見つけるためにディレクトリを検索する必要があります。たとえば、ソースからSubversionバージョンをインストールしてから、/usr/localBashプロンプトに入力しました。svnsync helpBashは「svnsync」のバイナリを見つけて/usr/local/bin/svnsync実行します。その後、Subversionのインストールを削除し/usr/localて再実行すると、svnsync helpBashが応答します。

bash: /usr/local/bin/svnsync: No such file or directory

しかし、Bashの新しいインスタンスを起動すると/usr/bin/svnsync

実行可能ファイルパスのキャッシュを消去する方法は?

ベストアンサー1

bashキャッシュコマンドのフルパス。以下を使用して、実行したいコマンドがハッシュされていることを確認できますtype

$ type svnsync
svnsync is hashed (/usr/local/bin/svnsync)

キャッシュ全体を消去するには:

$ hash -r

または1つのアイテムのみを使用してください。

$ hash -d svnsync

詳細については、およびhelp hashを参照してくださいman bash

おすすめ記事