如何将 pip3命令改为 pip?

我卸载了 pip,而是安装了 pip3。现在,我想通过仅键入 pip来使用 pip3。原因是我习惯于只输入 pip,而且每个指南都使用 pip命令,所以每次我想复制粘贴命令时,我必须将 pip修改为 pip3,这浪费了时间。当我输入 pip时,我有一个错误,即 pip: command not found,这意味着没有执行 pip命令。是否有可能使 pip点到 pip3

172251 次浏览

您可以通过向 。 bashrc文件中添加别名,使用别名 pip 来使用 pip3。

alias pip=pip3

或者向 $路径添加一个名为 pip 的符号链接,该符号链接指向 pip3二进制文件。

如果您的 macOS 主目录中没有 ~/. bashrc,请输入

alias pip=pip3

在 ~/. zprofile 文件中具有相同的效果。

这可以通过简单地为命令创建别名来完成。 要创建别名,只需键入

$alias new_command="existing_command"
对你来说,
$alias pip="pip3"

虽然这不是永久的。 OT 使它永久编辑您的 bashrc 文件
$ vim ~/.bashrc
an to the end of it append the line. $alias pip="pip3"

解决方案1

Check which version pip is pointing to

pip --version
pip 18.0 from /usr/lib/python2.7/site-packages/pip (python 2.7)

如果您的 pip指向 pip2,找到 pip“二进制”的位置。

which pip
/usr/bin/pip

这是一个简单的 Python 脚本:

cat /usr/bin/pip
#!/usr/bin/python2


# -*- coding: utf-8 -*-
import re
import sys


from pip._internal import main


if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(main())

所以只要把程序从 #!/usr/bin/python2改为 #!/usr/bin/python3

现在 pip指向 pip3

pip --version
pip 18.0 from /usr/lib/python3.6/site-packages/pip (python 3.6)

解决方案2

删除 /usr/bin/pip使得一个符号链接从想要的 pip 版本到它。

sudo rm /usr/bin/pip
sudo ln -s /usr/bin/pip3.6 /usr/bin/pip

与其在 bash 中手动创建自己的别名并希望这不会与任何东西冲突,大多数包管理器应该允许您注册希望使用的版本,同时维护依赖关系。

例如在 Linux 上:

sudo update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1

或者在 Mac (MacPorts)上:

port select --set pip pip3

在主目录中更改 bashrc 文件后,可以为 pip3编写 pip。

在 Mac -

打开 bashrc 文件-

vim ~/.bashrc

在文件末尾添加这一行-

alias pip="pip3"

Close the file. Don't forget to source this file in the terminal by

source ~/.bashrc

现在,无论何时在任何命令中使用 pip,它都会被解释为 pip3

You can check it by running the command -

pip --version

因为您卸载了 pip,所以这个解决方案假设您只使用 pip3

  1. 打开终端。

  2. 创建一个简单的链接:

    sudo ln -s /usr/bin/pip3 /usr/bin/pip

Now when you type pip, it will invoke pip3.

通过键入 pip --version检查它是否工作

pip --version
pip 9.0.1 from /usr/lib/python3/dist-packages (python 3.6)

You're all set!

复制 pip3文件并将其重命名为 pip:

sudo cp /usr/bin/pip3 /usr/bin/pip
pip --version

还有

pip3 --version

现在可以用了。

我认为一个人不应该做这样的事。实际上,我认为最好不要使用 pippip3等脚本。相反,人们应该总是倾向于使用更明确、更有把握的方式,将 Pip的可执行模块用于一个特定的 Python 解释器:

path/to/pythonX.Y -m pip somecommand

参考文献:

Pip 安装在/usr/bin/中。如果你根本没有 pip,我建议你只安装 pip 3。确保你不需要旧版本。

您可以使用以下命令检查可用的 pip 版本。

Ls/usr/bin/pip *

如果您有多个 pip,您需要优先考虑您的 pip 版本。我只有 pip3,所以我把它添加到第一优先级。您可以使用以下命令,然后就完成了。

Sudo update-options —— install/usr/bin/pip pip/usr/bin/pip31

您将得到如下输出:

Update-options: 使用/usr/bin/pip3在自动模式下提供/usr/bin/pip (pip)

现在测试:

Pip 版本

你会得到: pip 18.1 from /usr/lib/python3/dist-packages/pip (python 3.7)

如果 python2.7有其他版本,可以使用相同的 update 命令并将最后一位数字1更改为2。这将使它成为第二优先事项。

通过以下命令,您可以在安装 pip3之后安装 pip:

pip3 install --upgrade pip

之后:

~ pip --version
pip 20.0.2 from /usr/lib/python3/dist-packages/pip (python 3.8)