从终端呼叫程序时会发生什么?

时间:2016-07-25 22:27:02

标签: linux pip

含义。我叫一个程序。示例'pip'(因为我遇到了pip问题)以及Linux系统如何找到该程序?

我遇到了一个pip安装问题,当我在终端输入pip或任何程序并按回车键时,我试图了解引擎盖下发生了什么。

我希望这能让我解决问题。

如果您想知道我遇到的问题是ImportError: No module named 'pip'

2 个答案:

答案 0 :(得分:0)

Linux将搜索环境变量PATH中列出的所有可用目录,如果它从任何路径找到pip,它将尝试执行它。然后,如果文件pip具有用户的可执行权限,系统将执行该命令。

答案 1 :(得分:0)

通常,shell会搜索PATH变量中列出的目录,以查找具有您输入名称的文件。如果您想查找shell实际上尝试运行的文件,请在unix上类似系统(不读取窗口),运行which pip。我认为窗口等效于where pip,但不要引用我的话。

然而,您遇到的特定错误似乎是python运行的结果,如python -m pip,这意味着Python,请运行名为pip的模块。鉴于您的系统上存在一个名为pip的文件,试图运行pip,我猜测其中有两件事正在发生。

  1. 要么以某种方式删除了某些文件,在这种情况下,您应该尝试重新安装pip

  2. 或者您已经更改了哪个python是默认的python,并且您现在使用的python中没有pip模块。

  3. 要测试最后一个理论,请尝试运行which python,如果路径中有2,则运行python3 -m pip以查看蟒蛇是否混淆了。相反,如果你的系统默认使用python3,你会在上面命令的结果中看到3,你可以尝试python2 -m pip

    希望有助于消除Python版本的混乱。

相关问题