zsh:权限被拒绝:flake8

zsh: permission denied: flake8

我将 zsh 与 oh my zsh 一起使用,我已经使用 'pip install flake8' 安装了 flake8,并将路径更改为 flake8: export PATH="/opt/homebrew/lib/python3.10/site-packages:$PATH"

错误示例

❯ python --version
Python 3.10.1
❯ pip --version
pip 21.3.1 from /opt/homebrew/lib/python3.10/site-packages/pip (python 3.10)
❯ flake8 --version
zsh: permission denied: flake8
❯ python -m flake8 --version
4.0.1 (flake8-broken-line: 0.4.0, flake8-return: 1.1.3, flake8_isort: 4.1.1, mccabe: 0.6.1,
naming: 0.12.1, pycodestyle: 2.8.0, pyflakes: 2.4.0) CPython 3.10.1 on Darwin

python -m flake8 --version 有效,但 flake8 --version 无效。 如何修复此错误?

你不应该这样做

export PATH="/opt/homebrew/lib/python3.10/site-packages:$PATH"

那只是 python 模块所在的位置。 IE。可执行文件 flake8 不在该文件夹中,该文件夹中只存在一个包含 pyhton 源的同名目录。这就是您的错误来源。当您在 zsh 中键入 flake8 时,唯一在 PATH 中找到的是无法执行的目录。

您需要找出 pip 安装实际可执行文件的位置,并(可能)将该位置添加到路径中。您可以查看

返回的位置
echo `python -m site --user-base`/bin