Зауважте, що це не дублікат. Я прошу відключити кеш, не очищаючи його. Якщо у вас є кеш для очищення, він, очевидно, не відключений.
У рідкісних випадках я помічаю кеш-пам'ять речей, які він знайшов на шляху, це не тому, що це корисно, це тому, що це криваво дратує. Приклад:
~ dc$ export PATH=$HOME/bin:$PATH
~ dc$ cat bin/which
#!/bin/bash
echo "my which"
~ dc$ which
my which
~ dc$ rm bin/which
~ dc$ which which
-bash: /Users/dc/bin/which: No such file or directory
В іншій оболонці ...
~ dc$ which which
/usr/bin/which
Я впевнений, що це кешування мало сенс ще в старі добрі часи, коли диски були повільними, а пам’ять була дорогою і обмеженою, і тому ви не могли багато кешувати - кешування шляху дешевше, ніж кешування всіх дискових блоків, необхідних для пошуку команди . Але в наші дні це не дає помітної користі та створює більше проблем, ніж вирішує. Це невдача, що може бути помилкою.
І я навіть не можу знайти спосіб її відключити. Якісь покажчики?
set +hдля відключення хешування.
/usr/binповністю залишається в кеші.