В чем разница между «purge» и «remove --purge»?


19

В чем разница между sudo apt-get purgeи sudo apt get remove --purge?

Должна быть разница, или они оба не должны существовать.

Ответы:


17

Должны ли они существовать или не должны существовать, возможно, это спорный вопрос.

Однако - они абсолютно идентичны.

Из справочной страницы apt-get

--purge
           Используйте продувку вместо удаления для всего, что будет удалено. 
           Звездочка ("*") будет отображаться рядом с пакетами, которые
           планируется очистить. удалить --purge эквивалентно чистке
           команда. Элемент конфигурации: APT :: Get :: Purge.

Их ключевая часть --purge эквивалентна команде purge

Что касается того, почему - я бы предположил, что это исторический -

apt-get --purge remove пришел раньше apt-get purge

Глядя на старую документацию apt, она ссылается на старую версию команды. В новой документации приведен пример aptitude& apt-get purge.

Для согласованности - хорошая идея не удалять старые интерфейсы - если у вас есть старый скрипт - он все еще будет работать сегодня, потому что команды интерфейса все еще существуют.

Имейте в виду, что это не мешает Gnome осудить API - но это другая история ...


1
Если можно добавить, --purgeпереключатель пригодится, когда вы используете autoremoveкоманду. Я не знаю другого способа заставить apt-getфайлы конфигурации пакетов автоматически удаляться.
Игорь Зиновьев

1
Приятно, что в обоих случаях вы можете комбинировать --purge apt-get autoremove.
Ян Сантопьетро

1

Насколько я знаю, их нет, они точно так же делают, удаляют пакеты и пытаются удалить любые файлы конфигурации, созданные этими пакетами.

В основном apt-get purgeбыл реализован после, apt-get remove --purgeно старый вариант в стиле продувки все же остался.


1

Они такие же, как сказано на официальной странице справки : remove --purge is equivalent to the purge command.смотрите man aptи страницы Ubuntu в Интернете . Я думаю, что использование развилось, и обе команды остались; как и в других программах, использование меняется, и одна форма (то есть sudo apt-get purge) становится предпочтительнее другой. Тем не менее, я все еще ищу ссылку на это и изучаю историю использования, хотя есть полезные главы по управлению пакетами в Руководстве Debian и статьи по apt-get в блоге Рафаэля Херцога .

Используя пример удаления vlc (хотя и с -sфлагом имитации), мы видим, что команды имеют идентичные результаты; все остальные файлы, используемые vlc, должны быть удалены sudo apt-get autoremoveв обоих случаях.

1) sudo apt-get remove --purge

sudo apt-get -s remove --purge vlc
[sudo] password for mike: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libdc1394-22 libxcb-keysyms1 libzvbi0 libxcb-xv0 libtar0 libass4 libdvbpsi7
  libvlc5 vlc-nox libupnp3 libzvbi-common libxcb-randr0 libxcb-composite0
  libiso9660-8 libkate1 vlc-plugin-notify vlc-plugin-pulse vlc-data
  libdirac-encoder0 libvlccore5 libvcdinfo0 libebml3 libmatroska5
  libsdl-image1.2
Use 'apt-get autoremove' to remove them.
The following packages will be REMOVED
  vlc*
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
Purg vlc [2.0.3-0ubuntu0.12.04.1]

2) sudo apt-get purge

sudo apt-get -s purge vlc
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libdc1394-22 libxcb-keysyms1 libzvbi0 libxcb-xv0 libtar0 libass4 libdvbpsi7
  libvlc5 vlc-nox libupnp3 libzvbi-common libxcb-randr0 libxcb-composite0
  libiso9660-8 libkate1 vlc-plugin-notify vlc-plugin-pulse vlc-data
  libdirac-encoder0 libvlccore5 libvcdinfo0 libebml3 libmatroska5
  libsdl-image1.2
Use 'apt-get autoremove' to remove them.
The following packages will be REMOVED
  vlc*
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
Purg vlc [2.0.3-0ubuntu0.12.04.1]

1

Как указывалось в предыдущих ответах, оба они действительно эквивалентны.

Однако на ум приходит одна веская причина для продолжения существования обеих форм:

  • apt-get purge является полезным, добавленным позже сокращением для полного удаления определенных пакетов
  • --purgeФлаг позволяет изменять другие APT-GET обращений к файлам конфигурации чисток , а также, как и вapt-get autoremove --purge

Как обычный экспериментатор с новым программным обеспечением, у меня самого было значительно меньше старых файлов конфигурации с тех пор, как я научился изменять вызовы автоматического удаления!

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.