Ubuntu:卸载软件包后,它仍然存在

时间:2018-08-15 13:52:58

标签: ubuntu uninstall

我卸载了gem。现在,如果我输入命令:

sudo apt-get remove gem

它返回:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package 'gem' is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 41 not upgraded

所以我认为它已成功卸载。但是,如果我询问版本,它仍然可以工作:

gem --version

它返回:

2.5.2.1

此外,如果我输入“ ge”,然后单击选项卡,则会得到gem的自动完成功能。 为什么是这样?什么是“ 41未升级”?谢谢!

3 个答案:

答案 0 :(得分:1)

如果您手动安装了软件包(而不是通过软件包管理器),可能会发生这种情况。在这种情况下,程序包管理器(apt-get)可能不知道程序包及其位置,因此不认为已安装。终端中的自动完成功能只是基于它位于系统路径($ PATH)中。

运行which gem来查找可执行文件的安装位置。

尝试先运行apt-get update,然后运行apt-get upgrade,以获得有关“未升级”软件包的更多信息。

答案 1 :(得分:0)

这是我在Ubuntu 18.04中删除gem的方式,这也适用于以前的Ubuntu:

sudo apt-get purge ruby

如果我没记错的话,gem是Ruby的一部分。作为一名普通的Python用户,我不能完全确定gem是否是Ruby的一部分,但是上述命令肯定已从我的Ubuntu中删除了gem。

sudo apt-get purge ruby* 

此命令将删除grub!所以要小心这两个命令不同。

答案 2 :(得分:0)

要获取软件包名称,请写以下命令

$ dpkg-获取选择| grep -v卸载| grep软件名称| awk'{print $ 1}'

删除软件包

$ sudo apt-get purge package_name