Перевірити версію пакета за допомогою apt-get / podobnost?


430

Перш ніж встановити пакет, я хотів би дізнатися, яку версію я отримаю. Як перевірити версію перед установкою з використанням apt-getабо aptitudeна Debian або Ubuntu?

Відповіді:


540

вдало дістати

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

apt-get -s install <package>

Щоб побачити всі можливі оновлення, запустіть upgradeу багатослівному режимі та (щоб бути безпечним) з імітацією, натисніть, nщоб скасувати:

apt-get -V -s upgrade

apt-кеш

Параметр policyможе відображати встановлену та віддалену версію (встановити кандидат) пакета.

apt-cache policy <package>

apt-show-версії

Якщо встановлено, показує інформацію про версію про один або декілька пакетів:

apt-show-versions <package>

Перехід -uкомутатора з назвою пакета або без нього покаже лише оновлені пакети.

здатність

GUI консолі 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зробив мій день, дякую!
dr.dimitru

Є чи він рекомендував працювати apt-get install -sз sudo?
edwinksl

@edwinksl: Без нього це працює чудово, тому я не очікував, що судо стане кращим.
zondo

3
apt show <packages>також можна додати до списку
лео

59

Ще один спосіб використання dpkg та grep :

dpkg -s <package> | grep Version

14
Це не працює, коли <package> ще не встановлений (що було вимогою у питанні).
Серрано

1
Серрано Перейра, ця відповідь допомогла мені, який мав дещо інше питання, але досить схожий, щоб не піддатися стакверху.
Хосе Албан

краще: dpkg -s <упаковка> | grep Версія (Зверніть увагу на
велику

21

Іншим варіантом, якщо ви не знаєте повного найменування пакету, є форматування результату пошуку можливостей:

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стає кращим методом. Враховуючи довговічність придатного, це, мабуть, безпечна ставка на якийсь час!


Саме це я і шукав. Використовує віддалений репо для отримання версії та всілякої іншої інформації.
чотири43

6

Можна писати apt show <package>


Про це вже йшлося у відповіді Неда Фландрії, unix.stackexchange.com/a/362794/22812
Ентоні

@yurij, ви повинні мати власну відповідь відповідно до кількості редагувань, які ви зробили
Kiwy

@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


Для ubuntu це показує версії, знайдені для різних версій ubuntu (кодові назви типу "точні", "надійні" та "xenial"). Дуже повільно, але може допомогти вам у вирішенні питання модернізації LTS;)
Томаш Гандор

2

Щоб побачити останній доступний пакет перед встановленням. Виконайте оновлення, щоб у вас було все останнє оновлення пакета.

$sudo apt-get update

Тепер, щоб перевірити останній пакет, наявний у вашому сховищі, перед тим, як встановити команду Run нижче.

$apt-cache show <package name>

Приклад:

$apt-cache show latexila

або

$apt-cache show npm
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.