Большинство из вас видимо хотят найти версию установленного пакета в Linux.
Но что вы ожидаете найти в первую очередь?
Эта статья будет про версии для Debian Linux и его производных, таких как Ubuntu.
Этот небольшой совет может быть полезным.
Проверьте версию пакета Linux перед установкой
Существует множество способов найти версию пакета, даже если она еще не установлена в системах на основе DEB.
Здесь я дам вам несколько методов.
$ apt show <package-name>
Пример
$ apt show vim
Пример вывода
Package: vim Version: 2:8.0.1453-1ubuntu1.1 Priority: optional Section: editors Origin: Ubuntu Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com> Original-Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org> Bugs: https://bugs.launchpad.net/ubuntu/+filebug Installed-Size: 2,852 kB Provides: editor Depends: vim-common (= 2:8.0.1453-1ubuntu1.1), vim-runtime (= 2:8.0.1453-1ubuntu1.1), libacl1 (>= 2.2.51-8), libc6 (>= 2.15), libgpm2 (>= 1.20.7), libpython3.6 (>= 3.6.5), libselinux1 (>= 1.32), libtinfo5 (>= 6) Suggests: ctags, vim-doc, vim-scripts Homepage: https://vim.sourceforge.io/ Task: cloud-image, server Supported: 5y Download-Size: 1,152 kB APT-Sources: http://archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages Description: Vi IMproved - enhanced vi editor Vim is an almost compatible version of the UNIX editor Vi. . Many new features have been added: multi level undo, syntax highlighting, command line history, on-line help, filename completion, block operations, folding, Unicode support, etc. . This package contains a version of vim compiled with a rather standard set of features. This package does not provide a GUI version of Vim. See the other vim-* packages if you need more (or less). N: There is 1 additional record. Please use the '-a' switch to see it
Как видно из вышеприведенного вывода, команда «apt show» отображает многие важные детали пакета,такие как,
- название пакета,
- версия,
- происхождение (откуда берется vim),
- сопровождение,
- домашняя страница пакета,
- зависимости,
- размер загрузки,
- описание,
- и многое другое.
Итак, доступная версия пакета Vim в репозиториях Ubuntu – 8.0.1453.
Это версия, которую я получу в итоге, если я установлю ее в своей системе Ubuntu.
В качестве альтернативы, используйте команду «apt policy», если вы предпочитаете короткий вывод:
$ apt policy vim vim: Installed: (none) Candidate: 2:8.0.1453-1ubuntu1.1 Version table: 2:8.0.1453-1ubuntu1.1 500 500 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages 500 http://security.ubuntu.com/ubuntu bionic-security/main amd64 Packages 2:8.0.1453-1ubuntu1 500 500 http://archive.ubuntu.com/ubuntu bionic/main amd64 Packages
Или даже короче
$ apt list vim Listing... Done vim/bionic-updates,bionic-security 2:8.0.1453-1ubuntu1.1 amd64 N: There is 1 additional version. Please use the '-a' switch to see it
Apt является менеджером пакетов по умолчанию в последних версиях Ubuntu.
Таким образом, этой команды достаточно, чтобы найти подробную информацию о пакете.
Неважно, установлен пакет или нет.
Эта команда просто перечислит версию данного пакета вместе со всеми другими деталями.
Способ 2 – Использование Apt-get
Мы можем использовать команду apt-get с опцией -s.
$ apt-get -s install vim
NOTE: This is only a simulation! apt-get needs root privileges for real execution. Keep also in mind that locking is deactivated, so don't depend on the relevance to the real current situation! Reading package lists... Done Building dependency tree Reading state information... Done Suggested packages: ctags vim-doc vim-scripts The following NEW packages will be installed: vim 0 upgraded, 1 newly installed, 0 to remove and 45 not upgraded. Inst vim (2:8.0.1453-1ubuntu1.1 Ubuntu:18.04/bionic-updates, Ubuntu:18.04/bionic-security [amd64]) Conf vim (2:8.0.1453-1ubuntu1.1 Ubuntu:18.04/bionic-updates, Ubuntu:18.04/bionic-security [amd64])
Здесь опция -s указывает на симуляцию.
Как вы можете видеть на выводе, она не выполняет никаких действий.
Вместо этого она просто выполняет симуляцию, чтобы вы знали, что произойдет при установке пакета Vim.
Вы можете заменить опцию «install» опцией «upgrade», чтобы увидеть, что произойдет при обновлении пакета.
$ apt-get -s upgrade vim
Метод 3 – Использование Aptitude
Aptitude – это пакетный менеджер APT на основе командной строки ncurses и командной строки в Debian и его производных.
Чтобы найти версию пакета с Aptitude, просто запустите:
$ aptitude versions vim p 2:8.0.1453-1ubuntu1 bionic 500 p 2:8.0.1453-1ubuntu1.1
Вы также можете использовать опцию (-s) симуляции, чтобы увидеть, что произойдет, если вы установите или обновите пакет.
$ aptitude -V -s install vim The following NEW packages will be installed: vim [2:8.0.1453-1ubuntu1.1] 0 packages upgraded, 1 newly installed, 0 to remove and 45 not upgraded. Need to get 1,152 kB of archives. After unpacking 2,852 kB will be used. Would download/install/remove packages.
Здесь флаг -V используется для отображения подробной информации о версии пакета.
Аналогичным образом, просто замените «install» на «upgrade», чтобы увидеть, что произойдет, если вы обновите пакет.
$ aptitude -V -s upgrade vim
Другой способ найти неустановленную версию пакета с помощью команды Aptitude:
$ aptitude search vim -F "%c %p %d %V"
здесь,
- -F используется, чтобы указать, какой формат должен использоваться для отображения вывода,
- %c – статус данного пакета (установлен или не установлен),
- %p – название пакета,
- %d – описание пакета,
- %V – версия пакета.
Это полезно, когда вы не знаете полного имени пакета.
Эта команда получает заданную строку (т.е. vim).
Вот пример вывода вышеуказанной команды:
[...] p vim Vi IMproved - enhanced vi editor 2:8.0.1453-1ub p vim-tlib Some vim utility functions 1.23-1 p vim-ultisnips snippet solution for Vim 3.1-3 p vim-vimerl Erlang plugin for Vim 1.4.1+git20120 p vim-vimerl-syntax Erlang syntax for Vim 1.4.1+git20120 p vim-vimoutliner script for building an outline editor on top of Vim 0.3.4+pristine p vim-voom Vim two-pane outliner 5.2-1 p vim-youcompleteme fast, as-you-type, fuzzy-search code completion engine for Vim 0+20161219+git
Способ 4 – Использование Apt-кеша
Команда Apt-cache используется для запроса кеша APT в системах на основе Debian.
Это полезно для выполнения многих операций над кэшем пакетов APT.
Один прекрасный пример взят из определенного репозитория / ppa.
Команда покажет информации не только об установленных приложениях, поэтому мы можем найти версию пакета, даже если он не установлен.
Например, следующая команда найдет версию пакета Vim:
$ apt-cache policy vim
Вывод:
vim: Installed: (none) Candidate: 2:8.0.1453-1ubuntu1.1 Version table: 2:8.0.1453-1ubuntu1.1 500 500 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages 500 http://security.ubuntu.com/ubuntu bionic-security/main amd64 Packages 2:8.0.1453-1ubuntu1 500 500 http://archive.ubuntu.com/ubuntu bionic/main amd64 Packages
Как видно из вышеприведенного вывода, Vim не установлен.
Если вы хотите установить его, вы получите версию 8.0.1453.
Он также показывает, из какого репозитория приходит пакет vim.
Способ 5 – Использование apt-show-version
Команда Apt-show-version используется для установки и показа версий пакетов в системах на основе Debian.
Она также отображает список всех обновляемых пакетов.
Это довольно мобильно, если у вас смешанная стабильная / тестовая среда.
Например, если у вас есть стабильные и тестовые репозитории, вы можете легко найти список тестовых приложений и, таким образом, вы можете обновить все тестируемые пакеты.
Apt-show-version не устанавливается по умолчанию.
Вам необходимо установить его с помощью команды:
$ sudo apt-get install apt-show-versions
После установки запустите команды, опять же на примере Vim:
$ apt-show-versions -a vim vim:amd64 2:8.0.1453-1ubuntu1 bionic archive.ubuntu.com vim:amd64 2:8.0.1453-1ubuntu1.1 bionic-security security.ubuntu.com vim:amd64 2:8.0.1453-1ubuntu1.1 bionic-updates archive.ubuntu.com vim:amd64 not installed
Здесь ключ -a выведет все доступные версии данного пакета.
Если данный пакет уже установлен, вам не нужно использовать опцию -a.
В этом случае просто запустите:
$ apt-show-versions vim
Если вы знаете какие-либо другие методы, пожалуйста, поделитесь ими в разделе комментариев ниже.
Я проверю и обновлю это руководство.