GNU/Linux >> Linux の 問題 >  >> Linux

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

実行可能ファイルへのフルパスを指定せずにプログラムを実行すると、Bashは$PATH内のディレクトリを検索する必要があります バイナリを見つけるために、Bashはある種のキャッシュのパスを覚えているようです。たとえば、ソースから/usr/localにSubversionのビルドをインストールしました 、次にsvnsync helpと入力します Bashプロンプトで。 Bashはバイナリ/usr/local/bin/svnsyncを見つけました 「svnsync」の場合は実行しました。次に、/usr/localにあるSubversionのインストールを削除したとき svnsync helpを再実行しました 、Bashの応答:

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

しかし、Bashの新しいインスタンスを起動すると、/usr/bin/svnsyncが検出されて実行されます。 。

実行可能ファイルへのパスのキャッシュをクリアするにはどうすればよいですか?

承認された回答:

bash コマンドへのフルパスをキャッシュします。実行しようとしているコマンドがtypeでハッシュされていることを確認できます コマンド:

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

キャッシュ全体をクリアするには:

$ hash -r

または1つのエントリ:

$ hash -d svnsync

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


Linux
  1. Bashでループを作成する方法

  2. LinuxでBashの履歴をクリアする方法

  3. LinuxでコマンドラインからWebブラウザのキャッシュをクリアする方法

  1. LinuxでBASHコマンドライン履歴をクリアする方法

  2. LinuxでBashの履歴から特定のコマンドをクリアする方法

  3. Firefoxでキャッシュをクリアするにはどうすればよいですか?

  1. Redisキャッシュをクリアする方法

  2. Bashでコメントする方法

  3. Linuxでメモリキャッシュをクリアする方法