如何在/ usr / local / bin /中删除python

时间:2015-05-21 08:30:31

标签: python linux ubuntu

我在/usr/local/bin中安装了Python 2.7.9。现在它不再起作用了。我在/usr/bin/中有另一个Python,但路径中首先是/usr/local/bin/。我怎样才能删除2.7.9 Python?

4 个答案:

答案 0 :(得分:8)

您的问题缺乏详细信息,最恰当的是您如何将Python实际安装到/usr/local/bin中。安装方法将指示如何删除已安装的文件。

将包安装到目录的/usr/local层次结构中的最常用方法是从源代码编译并在编译和链接后运行sudo make install。如果您尚未删除原始(未压缩的)源目录,则可以通过运行以下命令将其更改为并删除已编译的Python包:

 sudo make uninstall

如果源代码已被删除,您可以尝试重新下载源代码。

如果uninstall没有make目标(遗憾的是,比您想象的更常见),另一个(不优雅的)选项是使用find命令搜索所有文件/usr/local目录树,其修改时间与您要删除的应用程序中的其他文件相同。

现在,我建议安装checkinstall工具。这可以用来创建RPM或Debian软件包,然后使用系统的常规软件安装工具安装(和卸载),而不是运行make install

答案 1 :(得分:4)

  

免责声明:我已经学到了很多东西,并建议为shell或shell会话设置环境变量,而不是使用此答案。例如,如果手动将系统的Python2解释器重新链接到Python3解释器,则可能会对系统造成严重破坏。请谨慎使用此答案。

只需重置符号链接。

首先,找出哪个python:

$ which python

在我的情况下,我得到:

/usr/local/bin/python

然后找到符号链接指向的位置

$ file /usr/local/bin/python
/usr/local/bin/python: symbolic link to `/usr/bin/python'

然后只需将符号链接重新指定为默认值(在本例中,我使用默认值:/ usr / bin / python)。

无需卸载。

更新

我已经找到了许多更好的方法来制定这种完全相同的行为,而不会对整个系统产生影响。

说我在python中安装了不受欢迎的/usr/bin,在python中安装了所需的/opt/bin。让我们说比较点/usr/bin是Python 3.5,而/opt/bin是Python 2.7。这会对使用错误的Python解释器产生直接影响,而不是微妙的错误。

应用程序默认值

如果您希望(在Linux系统上)更改哪个interpeter运行Python脚本,您可以通过GUI或xdg-mime(可以找到演练here)更改此脚本。对于macOS或Windows,可以通过GUI轻松完成。

Interactive Shell

如果您想更改特定shell的默认Python,我可以看到两种很好的方法。一种方法是在特定情况下将默认搜索PATH更改为/opt/bin之前设置usr/bin,但是,如果您有许多系统软件包的替代安装,则可能会出现问题。另一种方法是将Python的别名设置为您要使用的版本。这是首选解决方案,因为它只更改解释器,并且只是引用现有命令的快捷方式。

例如,要设置我可以使用的别名:

alias python="/opt/bin/python"

要更改默认路径,我可以使用:

export PATH=/opt/bin:$PATH

将这些行添加到~/.bashrc~/.bash_aliases(后者默认为Ubuntu)将使这些快捷方式成为您启动的任何交互式shell的默认值。结合应用程序默认值和交互式shell脚本,您可以严格控制哪个解释器运行您的代码,但不需要干扰可能至关重要的系统文件。

答案 2 :(得分:3)

您的PATH环境变量。它有一个目录列表,当它寻找要执行的程序时,它会搜索(按相同的顺序)。基本上你想把/ usr / local / bin放在PATH环境变量的开头。将以下内容添加到〜/ .bashrc文件中:

export PATH=/usr/local/bin:$PATH

您可以通过在bash中运行set命令来查看当前设置。

或者,您可以简单地将/ usr / bin / python重命名为/usr/bin/python2.3并创建指向新版本的符号链接,例如

ln -s /usr/local/bin/python /usr/bin/python

答案 3 :(得分:1)

您可以使用checkinstall删除Python,

  1. 安装checkinstall
  2. 使用checkinstall来解决您的Python安装问题
  3. 使用dpkg -r删除deb。
  4. 有关详细信息,请参阅this post