Некоторые приложения могут быть установлены с кучей пакетов. Например, vim
могут идти вместе с пакетами: vim-gnome
, vim-gtk
, vim-nox
и т. д. Чтобы удалить приложение, мне нужно определить, какой именно пакет фактически установил мне приложение. Как это определить? Я хотел бы получить его через командную строку.
Ответ на мой вопрос немного отличается от ответов навопрос:
$ dpkg -S "$(readlink -f `which vim`)"
решение1
apt-cache showpkg vim
Эта команда показывает как vim
зависимости пакетов, так и их обратные зависимости.
Для установки пакета необходимы его зависимости; если вы устанавливаете пакет, то в первую очередь будут установлены его зависимости, которые еще не установлены (рекурсивно: если C зависит от B, а B зависит от A, система обеспечит установку A в первую очередь, затем B и, наконец, C).
Обратные зависимости пакета — это то, о чем вы спрашиваете: это пакеты, для которых указанный пакетявляетсязависимость. Итак, если использовать ваш пример:
ghoti@home $ apt-cache showpkg vim
Package: vim
Versions:
2:7.4.1689-3ubuntu1 (/var/lib/apt/lists/us.archive.ubuntu.com_ubuntu_dists_xenial_main_binary-i386_Packages) (/var/lib/dpkg/status)
Description Language:
File: /var/lib/apt/lists/us.archive.ubuntu.com_ubuntu_dists_xenial_main_binary-i386_Packages
MD5: 59e8b8f7757db8b53566d5d119872de8
Description Language: en
File: /var/lib/apt/lists/us.archive.ubuntu.com_ubuntu_dists_xenial_main_i18n_Translation-en
MD5: 59e8b8f7757db8b53566d5d119872de8
Reverse Depends:
vimhelp-de,vim 2:7.5
vimhelp-de,vim 2:7.4
byobu,vim
vim-vimoutliner,vim
vim-tlib,vim
vim-tabular,vim
[and a whole bunch of others omitted for brevity]
Dependencies:
2:7.4.1689-3ubuntu1 - vim-common (5 2:7.4.1689-3ubuntu1) vim-runtime (5 2:7.4.1689-3ubuntu1) libacl1 (2 2.2.51-8) libc6 (2 2.15) libgpm2 (2 1.20.4) libselinux1 (2 1.32) libtinfo5 (2 6) ctags (0 (null)) vim-doc (0 (null)) vim-scripts (0 (null))
Provides:
[omitted for brevity]
решение2
Я думаю, для этого вам следует использовать apt-file.
$ sudo apt-get install apt-file
Тогда вы будете использовать это вот так
$ apt-file search `which vim`