Я нашел этот код в файле virtualenv activate
:
# This should detect bash and zsh, which have a hash command that must
# be called to get it to forget past commands. Without forgetting
# past commands the $PATH changes we made may not be respected
if [ -n "${BASH-}" ] || [ -n "${ZSH_VERSION-}" ] ; then
hash -r 2>/dev/null
fi
hash -r 2
выдает ошибку как в bash, так и в zsh. Как работает этот код? Как этот код забывает прошлые команды? Почему $PATH
изменения могут не соблюдаться, если мы не забываем прошлые команды? Можете ли вы показать мне пример?