我对通过pyenv/pip安装的路径上的可执行文件感到困惑。故事从我拥有多个python解释器和一个给定的包开始。今天我学习了pipx
,它应该为我提供一个由python包(可执行文件)构成的系统独立的可执行文件。安装包后,pipx正确地警告我它已经存在。然而,如何在我的路径上摆脱它,以便能够使用新的、正确的可执行文件,还不太清楚
我尝试过删除路径上被发现为重复的文件,这导致了下面一个有趣的情况:
my_machine:proj_a ikkamens$ pipx install flynt --python python3.8
⚠️ Note: flynt was already on your PATH at /Users/ikkamens/.pyenv/shims/flynt
installed package flynt 0.40.1, Python 3.8.0
These apps are now globally available
- flynt
done! ✨ 🌟 ✨
my_machine:proj_a ikkamens$ flynt --help
pyenv: flynt: command not found
The 'flynt' command exists in these Python versions:
3.6.8/envs/blues
3.7.3
3.8-dev
blues
my_machine:proj_a ikkamens$ rm /Users/ikkamens/.pyenv/shims/flynt
my_machine:proj_a ikkamens$ flynt
-bash: /Users/ikkamens/.pyenv/shims/flynt: No such file or directory
my_machine:proj_a ikkamens$ cd
my_machine:~ ikkamens$ cat .bashrc | grep fl
my_machine:~ ikkamens$ which flynt
/Users/ikkamens/.local/bin/flynt
my_machine:~ ikkamens$ flynt
-bash: /Users/ikkamens/.pyenv/shims/flynt: No such file or directory
怎么可能which
返回的结果与执行的结果不一样?请注意,my.bashrc不包含任何别名或类似内容(grep语句)。如何彻底摆脱旧安装遗留下来的东西
使用pyenv,您可以获得不同的独立python环境。首先,您必须激活一个pyenv环境:
正如@jordanm所评论的,这个问题是由bash散列路径查找引起的
相关问题 更多 >
编程相关推荐