1

Я установил новый исполняемый файл в /usr/local/bin и этот каталог находится на моем пути впереди /usr/bin . Но bash по-прежнему предпочитает версию в /usr/bin пока я не начну новый процесс bash. Команда which четко видит, что предпочтительная версия находится в /usr/local/bin .

Bash должен кэшировать расположение исполняемых файлов. Можно ли обновить его, чтобы теперь видеть новую версию в /usr /local /bin без перезапуска bash?

1 ответ1

3

Этот Unix & Linux ответ актуален:

bash кэширует полный путь к команде. Вы можете проверить, что команда, которую вы пытаетесь выполнить, хешируется командой type :

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

Чтобы очистить весь кэш:

$ hash -r

Или только одна запись:

$ hash -d svnsync

Для получения дополнительной информации обратитесь к help hash и man bash .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .