|
本文将先容在 Debian 及其衍生品(如 Ubuntu)中,若何在软件包安装之前检查它的版本。对于那些想在安装之前晓得软件包版本的人来说,这个小技能能够会有所帮助。
-- Sk(作者)
大大都人都晓得若何在 Linux 中 查找已安装软件包的版本 ,可是,你会若何查找那些还没有安装的软件包的版本呢?很简单!本文将先容在 Debian 及其衍生品(如 Ubuntu)中,若何在软件包安装之前检查它的版本。对于那些想在安装之前晓得软件包版本的人来说,这个小技能能够会有所帮助。
在安装之前检查 Linux 软件包版本
在基于 DEB 的系统中,即使软件包还没有安装,也有很多方式可以检察他的版本。接下来,我将逐一先容。
方式 1 – 利用 Apt
检查软件包的版本的懒人方式:
$ apt show
示例:
$ apt show vim
示例输出:
Package: vim
Version: 2:8.0.1453-1ubuntu1.1
Priority: optional
Section: editors
Origin: Ubuntu
Maintainer: Ubuntu Developers
Original-Maintainer: Debian Vim Maintainers
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 来自那里),保护者,包的主页,依靠,下载巨细,简介,其他。
是以,Ubuntu 仓库中可用的 Vim 版本是 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
在 Debian 及其衍生品中,aptitude 是一个基于 ncurses(LCTT 译注:ncurses 是终端基于文本的字符处置的库)和号令行的前端 APT 包治理器。
利用 aptitude 来检察软件包的版本,只需运转:
$ aptitude versions vim
p 2:8.0.1453-1ubuntu1 bionic 500
p 2:8.0.1453-1ubuntu1.1 bionic-security,bionic-updates 500
你还可以利用模拟选项(-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 标志用于显现软件包的具体信息。
$ aptitude -V -s upgrade vim
类似的,只需将 install 替换为 upgrade 选项,即可检察升级包会发生什么。
$ 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-cache
apt-cache 号令用于查询基于 Debian 的系统中的 APT 缓存。对于要在 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-versions
在 Debian 和基于 Debian 的系统中,apt-show-versions 号令用于列出已安装和可用软件包的版本。它还显现一切可升级软件包的列表。假如你有一个夹杂的稳定或测试情况,这是很是方便的。例如,假如你同时启用了稳定和测试仓库,那末你可以轻松地从测试库找到利用法式列表,还可以升级测试库中的一切软件包。
默许情况下系统没有安装 apt-show-versions,你需要利用以下号令来安装它:
$ 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
差不多完了。假如你还领会其他方式,鄙人面的批评平分享,我将检查并更新本指南。
via: https://www.ostechnix.com/how-to-check-linux-package-version-before-installing-it/
作者: sk 选题: lujun9972 译者: MjSeven 校订: wxy
本文由 LCTT 原创编译, Linux中国 声誉推出
点击“领会更多”可拜候文内链接 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|