Проверить версию пакета, используя apt-get / aptitude?

431

Перед установкой пакета я бы хотел узнать, какую версию я получу. Как проверить версию перед установкой с использованием apt-getили aptitudeна Debian или Ubuntu?

Джефф Шаллер
источник

Ответы:

541

APT-получить

Вы можете запустить симуляцию, чтобы увидеть, что произойдет, если вы обновите / установите пакет:

apt-get -s install <package>

Чтобы увидеть все возможные обновления, запустите upgradeв подробном режиме и (для безопасности) с симуляцией нажмите, nчтобы отменить:

apt-get -V -s upgrade

APT-кэша

Опция policyможет показать установленную и удаленную версию (кандидат на установку) пакета.

apt-cache policy <package>

кв-шоу-версия

Если установлено, показывает информацию о версии одного или нескольких пакетов:

apt-show-versions <package>

Передача -uкоммутатора с или без имени пакета покажет только обновляемые пакеты.

уместность

Графический интерфейс консоли aptitudeможет отображать обновляемые пакеты с новыми версиями. Откройте меню «Обновляемые пакеты». Нажатие vна пакет покажет более подробную информацию о версии.

Или в командной строке:

aptitude versions <package>

Передача -Vпокажет подробную информацию о версиях, опять же, чтобы быть в безопасности с переключателем симуляции:

aptitude -V -s install <package>

Подстановка install <package>с upgradeпокажет версии всех обновляемых пакетов.

шутник
источник
9
«Программа 'apt-show-version' в настоящее время не установлена. Вы можете установить ее, набрав .."
Peter Ehrlich
1
apt-get -V -s upgradeсделал мой день, спасибо!
др.димитру
Рекомендуется ли работать apt-get install -sс sudo?
edwinksl
@edwinksl: Без него все работает, поэтому я не ожидаю, что sudo будет лучше.
Зондо
3
apt show <packages>также можно добавить в список
leo
59

Еще один способ использования dpkg и grep :

dpkg -s <package> | grep Version
Alf
источник
14
Это не работает, когда <package> еще не установлен (что было требованием в вопросе).
Серрано
1
Серрано Перейра, этот ответ помог мне, у которого был немного другой вопрос, но достаточно похожий, чтобы не обманываться в stackoverflow.
Хосе Албан
лучше: dpkg -s <пакет> | Версия grep (обратите внимание на заглавную V)
langlauf.io
21

Другой вариант, если вы не знаете полное имя пакета, это форматирование результатов поиска aptitude:

aptitude search <package> -F "%c %p %d %V"

%c= статус (пакет установлен или нет)
%p= имя
%dпакета
%V= описание пакета = доступная версия пакета

Ссылка: http://linux.die.net/man/8/aptitude

Диего Пончиано
источник
8

Чтобы получить название пакета:

apt-cache search *search term*

Чтобы получить информацию о версии:

apt-cache show *packagename*

Я верю apt-getи apt-cacheосуждаюсь, aptи aptitudeстановится предпочтительным методом. Учитывая долговечность апартаментов, это, вероятно, безопасная ставка на какое-то время!

Нед Фландерс
источник
Это именно то, что я искал. Использует удаленное репо, чтобы получить версию и всякую другую информацию.
4:43
6

Ты можешь написать apt show <package>

elvis.dukaj
источник
Об этом уже говорилось в
Энтони
@yurij ты должен был написать свой собственный ответ в соответствии с количеством сделанных
тобой правок
@AnthonyGeoghegan ты ошибаешься, он говорит о том, apt-cacheчто я использую apt- это две разные вещи ... Что мне не хватает?
elvis.dukaj
aptи apt-cacheсделать то же самое. Если вы проверяете исходный код, они оба являются интерфейсом одной и той же функциональности: for show, вызываемая функция ShowPackageи for search, вызываемая функция DoSearch.
Энтони Геогеган
3
 $ rmadison gdm3
 gdm3 | 2.30.5-6squeeze2 | squeeze-security | i386
 gdm3 | 2.30.5-6squeeze5 | squeeze          | i386
 gdm3 | 3.4.1-8          | wheezy           | i386
 gdm3 | 3.14.1-7         | jessie           | i386
 gdm3 | 3.18.0-2         | stretch          | i386
 gdm3 | 3.18.0-2         | sid              | i386

из devscripts.deb

sbin_bash
источник
Для Ubuntu это показывает версии, найденные для разных версий Ubuntu (кодовые имена, такие как «точный», «надежный» и «xenial»). Очень медленно, но может помочь вам с решением обновить вашу LTS;)
Томаш Гандор
2

Чтобы увидеть последний доступный пакет перед установкой. Выполните обновление, чтобы иметь все последние обновления пакета.

$sudo apt-get update

Теперь, чтобы проверить последний пакет, доступный в вашем репозитории, перед установкой выполните команду ниже.

$apt-cache show <package name>

Пример:

$apt-cache show latexila

или же

$apt-cache show npm
Яниш Прадхананга
источник